ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

【C语言学习疑难杂症】第9期:关于%*s以及%*d等的使用

2026/9/8 8:23:27 拓冰建站 浏览量
【C语言学习疑难杂症】第9期:关于%*s以及%*d等的使用

关于%*s的使用的一些问题

int a,b; 
scanf("%2d%*3s%2d", &a, &b);//123456789 
printf("%d%d", a, b);//1267 scanf("%2d%*2s%2d", &a, &b);//123456789 
printf("%d%d", a, b);//1256 scanf("%2d%*s%2d", &a, &b);//123456789 0 
printf("%d%d", a, b);//120

上面前面两种例子里,诸如%2d,它是从输入中读取2位的宽度作为一个整数,%*3s,则是用于过滤3个宽度的输入字符。

对于第三种情况,必须要输入空格后的第二部分内容。因为%*s它没有限定忽略的长度,所以它会遇到你输入一个空格后才结束,然后把0读进去,给到b变量。