出於某種原因,信息形成文件沒有被傳遞。生成的輸出是錯誤的,有人可以指定什麼是錯誤的?我想讀取文件並傳遞文件信息並通過數組函數將其打印在屏幕上?
File Name File Size Date
AAA.C 1234 08-12-94
XXX.TXT 5678 12-11-96
DDD.C 9876 01-12-97
BBB.TXT 4455 06-08-93
這是數據文件,我試圖讀取文件並使用函數在屏幕上打印它。
#include<stdio.h>
char filedata(char name[][7]);
int main(void)
{
char name[4][7];
int i;
filedata(name);
for(i=0;i<4;i++)
{
puts(name[i]);
}
}
char filedata(char name[4][7])
{
FILE *infile;
infile=fopen("data","r");
int rows = sizeof(name)/sizeof(name[0]);
int i;
for(i=0;i<rows;i++)
{
fgets(name[i],sizeof(name),infile);
}
}
鍵盤上的CAPS鎖定錯誤。 –
警告:sizeof數組函數參數將返回大小'char(*)[7]'而不是'char [4] [7]'[-Wsizeof-array-argument] int rows = sizeof(name)/ sizeof (名稱[0]); ^ –
'char name [4] [7];' - >'char name [4] [8];'或更大的尺寸。你不能直接使用'fgets'來輸入文件名。這是因爲一行包含其他數據。 – BLUEPIXY