猿问

请教一下指针小问题,谢谢

为什么 int main(void) { char * p; *p = "hello";//char * p="hello"; printf("%s",p); return 0; } 原程序会崩溃,而改成注释的样子就不回崩溃呢?谢谢
苟延残喘1
浏览 1295回答 3
3回答

望远

char *是数据类型, 所以char * p="hello";是在创建指针变量p的同时赋初值, char * p; p = "hello";则是将定义和初始化分开了, 就像是int a=1;和int a;a=1; 而*p是指针变量p所指的变量,不能这样用。
随时随地看视频慕课网APP
我要回答