数据在scanf中是怎样存储并写入内存的?
&是地址符(指针),在scanf函数中,读取的数据为用户输入的字符组成的数组。
除了参数本身为字符组成的数组的情况下不需要在参数前加说明&,其余情况均需要使用&为输入类容分配字符串数组空间。
例如:
char a[10];
scanf("%s",a);
这样我们就先创建了一个字符类型的数组,并分配了十字节的长度。
当我们输入A CDEFGHIJK后
在计算机储存中字符组成的数组表现如下:
"'A'' ''C''D''E''F''G''H''I''NUL'"
65 | 32 | 67 | 68 | 69 | 70 | 71 | 72 | 7 |