0

これはコードのスニペットです。ここでは、空白を含む文字列をテキストから別の txt ファイルに出力します。コードリストがあり、特定の文字列を正しいコードに切り替える必要があります。コードは配列になっています。エンコード機能を働かせることはできません。Fprintf は、コードのに​​ベース文字列を出力します。これらの文字列をスキップしたい。印刷するためのコードだけが必要です。どこで何かが恋しいですか?

int m;
file = fopen("input.txt", "r" );
while (fscanf(file, "%s", word) != EOF ) {        
    for (m=0; m<j; m++) {                           
        if (strcmp(word, particularwords[m]) == 0) {     
            fprintf(outfile, "%s ", code[m]);
            continue;                     
        }
    }
fprintf(outfile, "%s ", word);
}
4

1 に答える 1

1

継続が問題です。

while ではなく for ループを続けます。

これは私がそうあるべきだと思うものです:

int m;
file = fopen("input.txt", "r" );
while (fscanf(file, "%s", word) != EOF ) {        
    for (m=0; m<j; m++) {                           
        if (strcmp(word, particularwords[m]) == 0) {     
            fprintf(outfile, "%s ", code[m]);
            break; //for                     
        }
    }
    if(m==j){ //word not found!
       fprintf(outfile, "%s ", word);
    }
}
于 2013-10-30T14:14:30.187 に答える