- scanf函数原型
- 控制格式
- 1.%[^\n]%*c
- 例子1
- 例子2
- 1.%[]
- 例子1
- 例子2
scanf函数原型
int scanf( const char *format, ... );
见可变参数求和
https://blog.csdn.net/csdn_kou/article/details/79996606
控制格式
%c 一个单一的字符
%d 一个十进制整数
%i 一个整数
%e, %f, %g 一个浮点数
%o 一个八进制数
%s 一个字符串
%x 一个十六进制数
%p 一个指针
%n 一个等于读取字符数量的整数
%u 一个无符号整数
%[] 一个字符集
%% 一个精度符号
1.%[^\n]%*c
经常需要读入一行字符串,而这串字符里面可能有空格、制表符等空白字符,如果直接用%s是不可以的,
例子1
输入:cs dn
char buf[100];
scanf("%s", buf);
输出:cs
例子2
输入:cs dn
scanf("%[^\n]%*c",str);就可以了,
输出:cs dn
1.%[]
当遇到第一个不再给定字符串中的字符时就停止
例子1
输入:123456789
char a[10];scanf("%[1-7]", &a);printf("%s\n", a);
输出:1234567
例子2
输入:abcdefg
char a[10];scanf("%[a-d]", &a);printf("%s\n", a);
输出:abcd