C语言中scanf("%d%*s%d",&a,&b);是什么意思%d读入十进制整数%s读入一个字符串,遇空格、制表符或换行符

C语言中scanf("%d%*s%d",&a,&b);是什么意思%d读入十进制整数%s读入一个字符串,遇空格、制表符或换行符
%d 读入十进制整数

%s 读入一个字符串,遇空格、制表符或换行符结束。

* 表示本输入项在读入后不赋值给相应的变量
对于scanf中的 %*(如%*s %*d) 表示跳过这个字段(假如存在)。相对前面括号中的,则是跳过一个单词 跳过一个整形数
那么,scanf("%d%*s%d",&a,&b);就是说:
读取一个整型数,放到a里;忽略中间输入的任何串(假如存在);读取另一个整型数,放到b里。
*是指向a的指针。&是a的内存地址。"%*s"根据以上推测,应该指向a的内存地址的指针。

← 上一篇: 下一篇: →