ファイルから行を読み取って印刷しようとしています。
char *readLine(int n, FILE *file) {
int i;
int BUF=255;
char temp[BUF];
char puffer[BUF];
for(i = 0; i < n-1; i++)
if(fgets(temp, BUF, file) == NULL)
return NULL;
if(fgets(puffer,BUF,file) == NULL)
return NULL;
return puffer;
}
次のようにすると、エラーは発生しません。
char * temp=readLine(2,somefile);
でもすぐに
printf("%s",temp);
valgrind は次のエラーを返します
Conditional jump or move depends on uninitialised value(s)
at 0x402EC04:strcrnul(in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
...