-2
私は各行の最初の文字を印刷しようとしていますが、何らかの理由で私のコードが各行の2番目の要素を印刷していますか?ファイルから間違った文字を印刷していますか?
マイコード:
int main(int argc, const char * argv[]) {
FILE *file;
char c;
char array[150];
file = fopen("/Users/bqas/Desktop/m/m/dict", "r");
while((c=fgetc(file))!= EOF){
fgets(array, 150, file);
printf("%c",array[0]);
printf("\n");
}
return 0;
}
テキスト行の一部。
a un, uno, una[Article]
aardvark cerdo hormiguero
aardvark oso hormiguero[Noun]
aardvarks cerdos hormigueros
aardvarks osos hormigueros
を期待だと:: 'しばらく(!)から(c = fgetc関数(ファイル)= EOF){'各行の先頭に1つの文字を消費... [の –
可能な複製を
が使用することをお勧めテキストファイルを1行ずつ読み込み、Cの各行の内容を取得する(http://stackoverflow.com/questions/23200822/read-a-text-file-line-by-line-and-retrieve-the-それぞれの行内の内容) –
投稿されたコードにはいくつかの「魔法」の数字が含まれています。 「魔法」の数字は、基準のない数字です。 I. 「魔法」の数字は、コードを理解し、デバッグし、維持することをはるかに困難にします。 'enum'文や' #define'文を使って '魔法'の数字に意味のある名前を付けることを提案し、その意味のある名前をコード全体に使います。 – user3629249