2017-07-19 16 views
-2

私はこの行の下で理解できません。 docs 1からCのfscanf関数の書式文字列の混乱

fscanf(file_pointer, "%*[^\n]"); 
+3

['scanf()manual'](https://linux.die.net/man/3/scanf)をお試しください。 '*'は変換の代入を抑止するので、文字列は単に*スキップされます。 –

答えて

1

は、そのが表示される場合があります

* - fscanfのいずれか受け取って引数に読み込まれている値を割り当てるために使用されていない代入抑制文字を。

[^\n] - (^)改行(\n)を除く任意の記号に一致する変換指定子です。

この結果、このfscanfは、新しい行が満たされるまですべてのシンボルを読み取ります。

+0

"*新しい行でない場合はシンボルを読み込み、改行でない場合はシンボルを読み込みます。*" - uhmは、*すべてを改行*まで読み込み、読み込まれたすべてを無視します。 –

+0

@FelixPalmen正確に、今修正されました。 –