即时通讯使用fgets读取行格式.txt文件.我传递一个数组作为第一个参数.不同的行填充数组中不同的空间量,但我想知道读取的行的确切长度,并根据该行做出决定.可能吗?
FILE * old;
old = fopen("m2p1.txt","r");
char third[100];
fgets(third,sizeof(third),old);
Run Code Online (Sandbox Code Playgroud)
现在,如果我要求sizeof(第三),它显然是100因为我自己声明(我不能声明'第三'数组而不指定大小)但我需要获得从文件读取的行的确切大小(因为它可能不填写enitre数组).
可能吗?该怎么办?
如果fgets成功,它会将一个字符串读入缓冲区.使用strlen()来查找它的长度.
char third[100];
if(fgets(third,sizeof(third),old) != NULL) {
size_t len = strlen(third);
..
}
Run Code Online (Sandbox Code Playgroud)