当前位置:编程学习 > C/C++ >>

c语言指针为题

(1)char *p="hello" (2)char *p; *p="hello"; (3)char *p; p="hello" 这三者有什么区别啊?第二个错在哪里呢?
追问:“但是解引用后却不是指针”这句话什么意思呢?
答案:三个基本相同,定义一个char指针 p;
 
只是赋值的方式不同,
a)是定义同时赋值
b)和c)一样,先定义,后赋值。
 
但b)*p="hello"中, 的*p就是具体的char,而不是char指针。
其他:高手一般不用指针吧,问题太多。(2)里*有问题 第一句和第三句式等价的,没有区别
但是第二句是错误的
p是指针,但是解引用后却不是指针,只有指针才指向字符串的首地址,所以第二句错误 

上一个:【悬赏】c语言问题,关于定义的int、float等
下一个:c++中怎样写完一个程序后,再不关闭的情况下,新建另一个程序?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,