在scanf中使用省略符号( %*)来实现assignment suppression,使用点号后跟数字来实现field width。
示例代码:
#include
int main() { int num1, num2; char str[10];
// 使用省略符号( %*)实现assignment suppression
printf("Enter two numbers and a string: ");
scanf("%d%*d%s", &num1, &str);
printf("num1: %d\nstr: %s\n", num1, str);
// 使用点号后跟数字来实现field width
printf("Enter a number: ");
scanf("%2d", &num2);
printf("num2: %d\n", num2);
return 0;
}
输出结果:
Enter two numbers and a string: 12 34 hello num1: 12 str: hello Enter a number: 123 num2: 12
上一篇:assignmentmakesintegerfrompointerwithoutacast[-Werror=int-conversion]
下一篇:assignmenttocharfromchar*makesintegerfrompointerwithoutacast