c语言里:p是指针变量,那应该将p=地址,char a[5],*p=a;p=✀abcd✀,为什么字

2025-02-23 14:30:12
推荐回答(2个)
回答1:

char a[5],*p = a;没有问题,把字符数组地址赋值给p
'abcd' 不是字符串,"abcd"才是字符串,而且是常量
'abcd'其实相当于0x61626364,把这个值赋值给变量p

回答2:

在C/C++中 p = "abcd"其实是把字符串"abcd"在内存中的首字符的地址,赋值给了p