我需要打印文档的第三行。
我的代码是:
#include "stdafx.h"
#include <stdio.h>
int _tmain(int argc, _TCHAR* argv[])
{
FILE * dat=NULL;
char linija[255];
char linija2[255];
dat = fopen("ulaz.txt", "r");
for (int i = 0; i < 10; i++)
{
if ( i = 2 )
{
fgets(linija2, 255, dat);
printf("Vrednost 3 linije iz datoteke ulaz.txt je:\n\n%s\n", linija);
}
fgets(linija, 255, dat);
}
return 0;
}
我没有得到第三行,而是在控制台中得到了一个无意义的无限循环。
有什么建议吗?
最佳答案
你想要这个:
FILE * dat=NULL;
char linija[255];
dat = fopen("ulaz.txt", "r");
for (int i = 0; i < 3; i++)
{
fgets(linija, 255, dat);
if ( i == 2 )
{
printf("Vrednost 3 linije iz datoteke ulaz.txt je:\n\n%s\n", linija);
return;
}
}
这将打印文件的第三行。
免责声明:这是未经测试、未进行错误检查且不完整的代码,仅供引用。
关于c - 打印文档中的特定行时出现无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40684548/