0

カーソルを2行ずらしたい。つまり、最初の 2 行を無視して、ファイルの 3 行目を取得したいということです。これが私のコードです:

void dosyaImlecOtele(int satir,FILE *dosya){
    int i,karakter;
    char temp[100];
    for(i=0;i<satir;i++){
        karakter = getc(dosya);
        while(karakter != '\n' && !feof(dosya)){
             karakter = getc(dosya);
        }
    }
    fread(temp,sizeof(char),100,dosya);
    printf("%s",temp);
    }

私はどこで間違っていますか?

4

1 に答える 1

0

forループが終了すると、改行ではないことを発見するために読み取られたためkarakter、3 行目の最初の文字 (2 であると想定) が含まれます。satirで文字をストリームに戻すことができますungetc

于 2013-01-12T10:30:49.020 に答える