在这篇文章中学习了%.*d在scanf()中的用法,
【C语言】的%*d、%.*s等详解:https://blog.csdn.net/zhinengxiong6/article/details/111306823
如下:
但是我实际操作却发现,%.*d后面的输入全被忽略了,如下:
(1)第一种情况:
int a=0,b=0,c=0,d=0;
scanf("%d%.*d%d%d",&a,&b,&c,&d);
printf("a=%d,b=%d,c=%d,d=%d",a,b,c,d);
输入:12 23 34 45
输出:a=12,b=0,c=0,d=0
(2)第二种情况:
int a=0,b=0,c=0,d=0;
scanf("%.*d%d%d%d",&a,&b,&c,&d);
printf("a=%d,b=%d,c=%d,d=%d",a,b,c,d);
输入:12 23 34 45
输出:a=0,b=0,c=0,d=0
发现包括%.*d在内的后面输入全被忽略了,不知为何,有待解决。——2022.4.14