#include <stdio.h>
int main(void)
{
char *p = "abcdefg"; //用字符指针时,字符串存于常量区 P存储的是字符串的首地址;
char a[] = "abcdefg"; //因为char a[] 是在栈中建立的,编译器会为此开辟内存空间,
//字符数组有内存空间 ,数组初始化是从常量区把字符串复制
//给数组,而指针初始化是复制字符串的地址;
int i = 4;
*(p + i) = 'q'; //存储在常量区的字符串是不能更改的
printf("*(p+%d) = %c",i,*(p+i));
return 0;
}
字符串指针与字符数组
最新推荐文章于 2024-01-13 15:54:35 发布