如果返回的是值,为什么printf("%c",0->data)合法?
返回的是值 你0->data是什么意思 没见过这样的指针 贴一下具体的代码 咱研究一下
p->data肯定是返回data的值。当然,data本身也可能是指针对象
0->data的写法,你在哪个编译器上编译通过啊?
p->data返回的是data的值,%c是输出char类型,char类型基本是最小的可输出类型了,不管是int、float、double还是指针,都能转换成char类型(从这些类型中取一个字节,如果是指针,就从改地址取一个char),所以编译器不会报错。
如有帮助,请采纳一下,谢谢。
合法的意思就是不报Error?但是如果data定义的时候,定义的非char或者unsigned char类型,那么编译的时候肯定会有Warnning,作为合格的程序员,警告就是Error,不允许有警告出现才对。
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632