字符指针与字符数组在内存上存储区别
A),char *p = “abcdef”;
B),char a[] = “123456”;
我的理解:
A)定义了一个指针变量p,p 本身在栈上占4 个byte ,p 里存储的是一块内存的首
地址。这块内存在静态区,其空间大小为 7 个byte
B)定义了一个数组a ,a 拥有7 个char 类型的元素,其空间大小为 7 。
那么指针a在内存什么地方,“123456”又存放在内存什么地方,也是放在内存静态区吗
能这样使用吗:strcpy(a,p);
请各位高手指点
[解决办法]
printf(“%x %x %x %x %x %x %x\n",*p,&a[0],&a[1],......); 你就知道