在使用scanf函数时如何跳过“,”
时间: 2024-10-29 17:19:11 浏览: 10
使用scanf().zip
当你使用`scanf`函数从用户输入读取数据,并希望跳过某些特定字符时,可以利用`scanf`的格式字符串中的占位符特性。","通常代表逗号,可以使用`[^,]`作为占位符,表示匹配除了","之外的所有字符。例如:
```c
#include <stdio.h>
int main() {
int num;
char name[50];
// 跳过逗号并读取整数
if (scanf("%d[^,]", &num) == 1) {
printf("Read integer: %d\n", num);
} else {
printf("Invalid input for number.\n");
}
// 跳过逗号并读取字符串,这里假设不超过49个字符
scanf("%48[^,]", name); // 使用48是因为我们需要留出一个位置给结尾的'\0'
printf("Read name: %s\n", name);
return 0;
}
```
在这个例子中,如果用户输入的是`123, John Doe`,程序将只读取`123`作为整数,并忽略后续的逗号。
阅读全文