void readfile() // 定义文件初始化函数 { int j; FILE *fp; if((fp=fopen("d:\\PEOPLE.txt","r"))==NULL) { printf("Connot open file strike any key exit!\n"); exit(0); } else { for(j=0;fread(&peo[j],sizeof(struct meeting),1,fp)!=0;j++);//从文件中读取数据 len=j; for(i=0;i<len;i++) { strcpy(peo[len].name,peo[j].name); strcpy(peo[len].tele,peo[j].tele); strcpy(peo[len].ID,peo[j].ID); strcpy(peo[len].department,peo[j].department); strcpy(peo[len].room_num,peo[j].room_num); }//把文件中的数据复制到结构体中 } fclose(fp);//关闭文件 }
时间: 2024-04-03 15:35:44 浏览: 67
readfile函数详解
这段代码实现了读取文件并初始化结构体数组的功能。具体来说,它打开了名为“PEOPLE.txt”的文件,读取其中的数据并将其存储在一个名为“peo”的结构体数组中。该数组的每个元素都包含了一个名为“name”的字符串、一个名为“tele”的字符串、一个名为“ID”的字符串、一个名为“department”的字符串和一个名为“room_num”的字符串。在读取文件时,它使用了一个循环来遍历文件中的所有记录,并计算出记录的总数。最后,它将数组中的数据复制到另一个数组中,并关闭了文件。
需要注意的是,该代码中的“struct meeting”类型没有在代码中给出,因此我们无法确定结构体的完整定义。此外,在将文件中的数据复制到结构体数组中时,它使用了错误的索引值(应该是“i”而不是“len”),这可能导致数据被复制到错误的位置。
阅读全文