我需要打印文档的第三行。
我的代码是:
#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;
}
而不是获得第3行,我在控制台中得到一个无意义的无限循环。
任何sugestions?
答案 0 :(得分:0)
你想要这个:
traverse()
这将打印文件的第3行。
免责声明:这是未经测试,非错误检查和不完整的代码,只是为了提供一个想法。
答案 1 :(得分:-1)
在这里,这样做。阅读每一行,然后在第三行打印它,你就完成了。没有必要阅读所有10.当您打开文件时,您需要关闭它。不要以为操作系统会清理你的混乱。
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;
}
}