c语言:如定义char+a[80],*p=a,则A.scanf("%s",a);B.canf("%s",&a);D.scanf("%s"&a[0];有什么区别

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/08 13:08:55
c语言:如定义char+a[80],*p=a,则A.scanf(

c语言:如定义char+a[80],*p=a,则A.scanf("%s",a);B.canf("%s",&a);D.scanf("%s"&a[0];有什么区别
c语言:如定义char+a[80],*p=a,则A.scanf("%s",a);B.canf("%s",&a);D.scanf("%s"&a[0];有什么区别

c语言:如定义char+a[80],*p=a,则A.scanf("%s",a);B.canf("%s",&a);D.scanf("%s"&a[0];有什么区别
A.scanf("%s",a),读入一个字符串,将其放入以a为起始单元的内存中
B.canf("%s",&a),是错误的,&a表示取a的地址,数组名a本身就是该数组的起始地址
D.scanf("%s",&a[0])//读入一个字符串,将其放入以a[0]为起始单元的内存中,实际上等价于A