C中的扫描集
让我们看看C中的scanset是什么。scanset基本上是scanf系列功能支持的说明符。它由%[]表示。在scanset内部,我们只能指定一个字符或一组字符(区分大小写)。处理扫描集时,scanf()只能处理扫描集中提到的那些字符。
示例
#include<stdio.h>
int main() {
char str[50];
printf("Enter something: ");
scanf("%[A-Z]s", str);
printf("Given String: %s", str);
}输出结果
Enter something: HElloWorld Given String: HE
它忽略用小写字母写的字符。'W'也被忽略,因为它前面有一些小写字母。
现在,如果扫描集的第一个位置有“^”,则说明符将在该字符首次出现后停止读取。
示例
#include<stdio.h>
int main() {
char str[50];
printf("Enter something: ");
scanf("%[^r]s", str);
printf("Given String: %s", str);
}输出结果
Enter something: HelloWorld Given String: HelloWo
在这里,scanf()字母“r”后,忽略字符。使用此功能,我们可以解决scanf不带空格的字符串的问题。如果我们输入%[^\n],它将占用所有字符,直到获得新的换行符。
示例
#include<stdio.h>
int main() {
char str[50];
printf("Enter something: ");
scanf("%[^\n]s", str);
printf("Given String: %s", str);
}输出结果
Enter something: Hello World. This line has some spaces. Given String: Hello World. This line has some spaces.
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短