C语言scanf的常用筛选功能使用
有一个这样的需求就是使用scanf限定输入数字。我们该怎么解决呢?
答案是使用:%[]
,表示要读入一个字符集合。
小例子
只限定输入数字:
char string[100];/* 这里只读取数字。*/
scanf("%[0-9]", string);
printf("string = %s\n", string);
键盘输入:
12345abc
打印输出:
string = 12345
一些常用限定符
限定符 | 含义 |
---|---|
%[0-9] | 数字集合 |
%[^0-9] | 非数字集合 |
%[a-zA-Z] | 字母集合 |
%[^a-zA-Z] | 非字母集合 |
除了支持scanf,还支持sscanf和fscanf。