まず、別のトピックが私の問題に関連している場合は申し訳ありませんが、私は適切なものに到達することはできません。C - fgetsと配列内のすべての行を格納
私は可能な限り明確にしようとします。
私はコースプロジェクトを実現しています。これは、約10個のテキストファイルを配列に保存してからデータを扱う必要があります。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int* argc, char* argv[]){
char* c = "./example.txt";
char s[500];
char* lignes[100];
int sizeLignes = 0;
printf("%s \n\n", c);
FILE* myFile = NULL;
myFile = fopen(c, "r");
if (myFile != NULL){
int n;
while (fgets(s, 500, myFile) != NULL){
printf("%d \n\n", sizeLignes);
lignes[sizeLignes] = s;
printf("%s", lignes[sizeLignes]);
sizeLignes++;
}
printf("%s", lignes[1]);
printf("%s", lignes[2]);
printf("%s", lignes[3]);
}else{
printf("Wrong file");
}
fclose(myFile);
return 0;
}
私のVAR:私はすべての行を取得するためのfgetsを使っ
(治療が問題ではない)、彼らは私が[]
コードのchar $への "文字列" を渡しますもしループごとにそれを印刷すればよいのです。 ループ内にlignes[sizeLignes]
を印刷しても良いです。 外に値を印刷しようとすると...最後の4単語などを保存するようなものです。
詳細情報が必要ですか?事前に
おかげで、
Izio
文字列を配列にコピーする必要があります。あなたは 's'へのポインタを配列に格納するだけで、次のループ反復で' s'を上書きします。 – pstrjds