在C语言中char a[ 50];用scanf()输入字符数组加不加&符号,是scanf("%s",&a)还是scanf("%s",a)

2025-12-06 08:33:06
推荐回答(5个)
回答1:

应该是 scanf("%s",a);
因为 a 其实是个地址,也就是数组第一个元素a[0]的地址,因此跟 scanf("%s", &a[0]); 是一样的,这样应该清楚一点吧,不懂可追问

回答2:

scanf(" %s ",a);
&是取地址符,表示这里是存储一个字符的地址 。
但在这里 a 作为一个数组名,它是一个常量指针,表示的也就是一个地址。

回答3:

是scanf("%s",a),a表示的就是数组的地址,不需要用&进行取地址了!

回答4:

是scanf("%s",a),a表示的就是数组的地址,不需要用&进行取地址了

回答5:

都是要& 的 表示地址