私はテキストファイルから各行を読み込み、標準出力に出力したいところです。理由なく、ファイルの最後の行をその文字配列に保存するだけです。 理由(いくつかの説明があります)C - ファイルからの読み込み(かなりシンプル)
9 int main(){
10 FILE * f;
11 char buffer[255];
12 char * arr[255];
13 int i=0,n;
14
15 f = fopen("input.txt", "r");
16 while(1){
17 if(fgets(buffer,255,f) != NULL){
18 arr[i++] = buffer;
19 }else break;
20 }
21 n=i;
22 for(i=0;i<n;i++){
23 printf("%s",arr[i]);
24 }
25
26 fclose(f);
27 return 0;
28 }
OK、しかし、バッファがARRに保存されるたびに[i]の – NiCU
ARRを[i]が唯一のバッファへのポインタを取得します。最終的にarrのすべてのエントリにはbufferのアドレスが含まれ、bufferにはファイルの最後の行が格納されます – TJD
arr []と思っている内容をstrcpyする必要があります。 – ervinbosenbacher