今天面试深信服,char p[]="hello",p指向内存的那个区域?数据区,代码区,堆,栈
char *q="world" q指向内存的那个区域?数据区,代码区,堆,栈
#include<stdio.h>
int main(){
char p[]="hello";//p指向栈
p[0]='a';
char *q="world";//q指向常量区
printf("%s\n",p);
*q='q';
printf("%s",q);
return 0;
}
p指向栈区,当对p数组的第一个元素进行修改,程序不会出错
q指向常量区,当对常量区的常数进行修改的时候,编译器报错,常数是不能被修改的