C语言输入格式控制字符串详解
1. 输入格式控制字符串基础
scanf_s()
函数使用的格式控制字符串与 printf()
有所不同。在格式控制字符串中放入一个或多个空白字符(如空格
、制表符 \t
、换行符 \n
),会使 scanf_s()
读取并忽略输入中的空白字符,直到遇到下一个非空白字符。单个空白字符会使任意数量的连续空白字符被忽略,因此可以在格式字符串中添加任意数量的空白字符以提高可读性。但要注意, scanf_s()
默认会忽略空白字符,不过在使用 %c
、 %[]
或 %n
进行数据读取时除外。
除 %
之外的任何非空白字符,会使 scanf_s()
读取但不存储该字符的连续出现。例如,如果想让 scanf_s()
忽略输入中分隔值的逗号,只需在每个格式说明符前加一个逗号。
格式说明符的一般形式如下:
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;
A(% - 格式说明符开始):::process --> B(* - 可选,忽略下一个输入值):::process
B --&