為什么
int main(void)
{
char * p;
*p = "hello";//char * p="hello";
printf("%s",p);
return 0;
}
原程序會(huì)崩潰,而改成注釋的樣子就不回崩潰呢?謝謝
3 回答
已采納

望遠(yuǎn)
TA貢獻(xiàn)1017條經(jīng)驗(yàn) 獲得超1032個(gè)贊
char?*是數(shù)據(jù)類(lèi)型, 所以char?*?p="hello";是在創(chuàng)建指針變量p的同時(shí)賦初值, char?*?p;?p?=?"hello";則是將定義和初始化分開(kāi)了, 就像是int?a=1;和int?a;a=1; 而*p是指針變量p所指的變量,不能這樣用。
- 3 回答
- 0 關(guān)注
- 1328 瀏覽
添加回答
舉報(bào)
0/150
提交
取消