【发布时间】:2017-07-19 11:55:27
【问题描述】:
我无法理解下面这行,谁能告诉我它是做什么的?
fscanf(file_pointer, "%*[^\n]");
【问题讨论】:
-
试试
scanf() manual。它匹配任何字符除了换行符,而*抑制转换的分配,所以字符只是“跳过”。
标签: c format-string
我无法理解下面这行,谁能告诉我它是做什么的?
fscanf(file_pointer, "%*[^\n]");
【问题讨论】:
scanf() manual。它匹配任何字符除了换行符,而*抑制转换的分配,所以字符只是“跳过”。
标签: c format-string
从docs 可能会看到:
* - 分配抑制字符,用于不将正在读取的值分配给fscanf 的任何接收参数。
[^\n] - 匹配除 (^) 新行 (\n) 之外的任何符号的转换说明符。
因此,fscanf 会读取所有符号,直到遇到新行。
【讨论】: