2016-11-22 10 views
0

私はconstファイル* fpを使用して通常のものを巻き戻し、fscanfなどにしようとしていますが、私はc4090エラーに遭遇します。rewindとfscanfの定数ファイルポインタを使用

int search(const FILE *fp, int patt) { 
    if (fp != NULL) { 
    rewind(fp) //Getting c4090 warning 
    //other statements 
    } 
} 

これは基本的な質問のように思えるし、私は少しとMicrosoftのマニュアルを探してみましたが私が持っていると私は本当に彼らが

+2

'rewind'は' FILE'構造体を変更し、それは 'constのFILE *を'取ることはありません。 – user3386109

答えて

1

を暗示しているのか理解していない「この警告は、することができ、大部分でありますconstまたはvolatile項目へのポインタがconstまたはvolatileを指すものとして宣言されていないポインタに割り当てられたときに発生します。

出典:https://msdn.microsoft.com/en-us/library/k77bkb8d.aspx

試してみてください。

int search(FILE *fp, int patt) { 
    if (fp != NULL) { 
    rewind(fp) //No c4090 warning, Because we can change fp 
    //other statements 
    } 
} 
+0

rewind()には何がありますか? – Comet

関連する問題