博文纲领:
C语言,语句scanf(,);
scanf()的功能是从键盘获取数据赋值给对应的变量,括号内包括输入控制符和输入参数两部分。从键盘输入的数据需要转化成输入控制符的格式数据,然后存入输入参数。scanf(%3d,&a);是通过十进制整数3指定输入的宽度,即字符数,超出部分不赋值,故题中只把123赋值给a。
C语言中的scanf函数在处理输入数据时,有三种主要情况会认为输入数据结束。下面我通过具体的例子来解释这些情况。 遇到空格、回车或跳格。例如使用scanf(%d%d,&a,&b)时,如果输入为12 空格 23,那么在对变量a进行输入时,当录入12后遇到空格,满足条件,scanf会停止对a的录入,因此a的值为12。
scanf()是C语言中的一个输入函数。与printf函数一样,都被声明在头文件stdio.h里,因此在使用scanf函数时要加上#include stdio.h。&n取变量的地址:&变量名,这将获得该变量的地址。
首先,这个语句显然是有问题的,但是能编译通过,说明是合法的。那么我们就需要弄清楚编译器是怎么理解这条语句的,以及运行时这条语句做了什么。