0

(リンク)sscanf()で説明されている関数のプロトタイプを次に示します。cplusplusreference

 int sscanf ( const char * s, const char * format, ...);

strcpy()最初の引数の型が( 1 ) やstrcat()( 2 ) ( const char*vs )のような他の多くの文字列ライブラリ関数と異なるだけでなく、最初の引数がchar*指す配列をどのように作成できるかについても奇妙に思えます。関数のまさに目的がそのポインターを使用してそれに書き込む(配列の内容を変更する)ことである場合の引数定数!!

つまり、修飾子を使用して、指す配列を変更できないことint sscanf (const char * s,const char * format, ...);を伝えていませんか? それはそのサイトのタイプミスですか、それとも何か理解できていないのでしょうか?説明してください。constss

4

5 に答える 5

0

C99 までの scanf プロトタイプは次のとおりです。

int scanf(const char* restrict s, const char* restrict format, ...);
于 2013-05-18T15:06:51.910 に答える