Tag: 文件

输出在文件操作中没有正确显示

任何人都可以解释这段代码中的错误。 #include int main() { FILE *f1; char c; f1 = fopen(“INPUT”, “w”); while((c=getchar()) != ‘/’) putc(c, f1); fclose(f1); f1 = fopen (“INPUT”, “r”); while ((c = getc(f1) != EOF)) printf(“%c”, c); fclose(f1); } 输出以无法检测的字体出现。 我也试过Windows。 但结果相同。

如何递归浏览文件夹并计算总文件大小

我试图递归遍历我的目录并打印文件大小,然后在最后打印所有文件大小的总和。 我无法弄清楚以递归方式传递我的函数的内容,并且我的变量总数不会最终正确,任何帮助都非常感谢,非常感谢提前。 #include #include #include #include #include #include void do_ls(char[]); int total = 0; int main(int ac, char *av[]) { if (ac == 1) do_ls(“.”); else { while (–ac) { printf(“%s:\n”, *++av); do_ls(*av); } } } void do_ls(char dirname[]) { DIR *dir_ptr; struct dirent *direntp; struct stat info; if ((dir_ptr = opendir(dirname)) == NULL) fprintf(stderr, […]

正确使用头文件?

最近我一直在使用头文件将我的程序拆分成单独的文件(包含函数和头文件的C文件声明它们)。 一切正常,但出于某种原因,我需要在每个C文件中包含和 …或者我的项目无法编译。 这是预期的行为吗?

你如何写入C中的txt文件的特定行?

我想覆盖txt文件中的某一行,同时保持所有其他行相同。 有这么好的简单方法吗?

检查c中的链表中是否已存在元素

假设我有一个存储book结构和下一个节点指针的链表: struct book { unsigned short size_of_content; unsigned short price; unsigned char *content; }; struct list { struct book p; struct list *next; }; 当我构建链表时,我会检查新书的价格是否与其中一本已链接的书的价格相同。 基本上确保没有重复的价格。 我有一个构建价格数组的想法,并将新价格与现有价格进行比较。 但是,由于C不支持无限大小的数组,我不认为我的方式是个好主意。 我该怎么办? 谢谢

在文件中搜索特定的行c代码

我正在研究C.我想问一下在文件中搜索特定行(或多行)的最佳方法是什么? 有人可以举个例子。 我有2个文件,我想看看这两个文件是否80%相同。 我想在其中一个文件中搜索其他文件中的某些特定行。 谢谢 我需要一些C代码示例。 这是一个小例子 int compareFile(FILE* file_compared, FILE* file_checked) { bool diff = 0; int N = 65536; char* b1 = (char*) calloc (1, N+1); char* b2 = (char*) calloc (1, N+1); size_t s1, s2; do { s1 = fread(b1, 1, N, file_compared); s2 = fread(b2, 1, N, file_checked); if (s1 != […]

如何读取和写入文件的整数

问题是我试图读取一些整数以了解我已经通过的游戏的级别,然后我想将当前级别的整数设置为1,如果t还没有。 它创建文件但不写任何东西。 谁知道为什么? 现在,它是第一次使用printf创建它时,但在读取它时会提供状态访问冲突。 void SaveGame(void) { FILE *pFile = fopen(“SavedData.txt”,”rb”); int MyArray[8] = {0}; if(pFile) { fscanf(pFile, “%d %d %d %d %d %d %d %d” , MyArray[0], MyArray[1], MyArray[2], MyArray[3], MyArray[4], MyArray[5], MyArray[6], MyArray[7]); fclose(pFile); } if(MyArray[Current] == 0) MyArray[Current] = 1; pFile = fopen(“SavedData.txt”, “wb”); if(pFile) { fprintf(pFile, “%d %d %d %d %d […]

opendir:打开的文件太多了

我写这段代码打印/home/keep with absolution path中的所有文件: #include #include #include #include #include #include #include void catDIR(const char *re_path); int main(int argc, char *argv[]) { char *top_path = “/home/keep”; catDIR(top_path); return 0; } void catDIR(const char *re_path) { DIR *dp; struct stat file_info; struct dirent *entry; if ((dp = opendir(re_path)) == NULL) { perror(“opendir”); return; } while (entry = […]

写入c MPI中的输出文件

我正在研究这个MPI代码,一切都正常工作,但我无法将程序的输出写入文件。 这里有一些代码来说明我的问题 int main(int argc, char *argv[]){ FILE *filename; int size, my_rank; int count =0; int tag =99; int limit = 5; MPI_Init(&argc, &argv); MPI_Status status; MPI_Comm_size(MPI_COMM_WORLD,&size); MPI_Comm_rank(MPI_COMM_WORLD,&my_rank); if(my_rank ==0) printf(“Process %d started the game and initialized the counter\n\n”,my_rank); MPI_Barrier(MPI_COMM_WORLD); if (size != 2) {//abort if the number of processes is not 2. fprintf(stderr, “only […]

如何通过读取文件将不同数据类型的数据推入向量?

我想使用下面的代码将下面的数据推送到一个向量。但我的代码只适用于整数。我如何为以下数据执行此操作? 谢谢。 我的数据: M,0.455,0.365,0.095,0.514,0.2245,0.101,0.15,15 M,0.35,0.265,0.09,0.2255,0.0995,0.0485,0.07,7 F,0.53,0.42,0.135,0.677,0.2565,0.1415,0.21,9 M,0.44,0.365,0.125,0.516,0.2155,0.114,0.155,10 I,0.33,0.255,0.08,0.205,0.0895,0.0395,0.055,7 I,0.425,0.3,0.095,0.3515,0.141,0.0775,0.12,8 F,0.53,0.415,0.15,0.7775,0.237,0.1415,0.33,20 F,0.545,0.425,0.125,0.768,0.294,0.1495,0.26,16 M,0.475,0.37,0.125,0.5095,0.2165,0.1125,0.165,9 F,0.55,0.44,0.15,0.8945,0.3145,0.151,0.32,19 我的代码: fp = fopen(argv[1], “r”); //Opening the input file in read mode. if(!fp) { printf(“open data source file failed!\n”); goto MAINEXIT; } int ivalue; //extract data from files while(fscanf(fp,”%d,”,&ivalue)!=EOF) { printf(“Counter-%d\n”,counter++); srcdata.push_back(ivalue); //Pushing value by value into the vector with “,” delimiter. […]