下面6条C语言代码请问那些正确那些错误,请指出。 A、int*c=0x257GVB29 B、in

下面6条C语言代码请问那些正确那些错误,请指出。A、int*c=0x257GVB29B、int*k=2000000000X、int*m=45189167678481849... 下面6条C语言代码请问那些正确那些错误,请指出。
A、int*c=0x257GVB29
B、int*k=2000000000
X、int*m=4518916767848184967
C、int*b=&a[0]
D、int*s='CD1'
E、int*a='D'
个人觉得好像6个代码都对(⊙o⊙),求大神告诉我那条是错的,错在那。拜托大家了
展开
 我来答
风若远去何人留
2017-03-20 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450134
专业C/C++软件开发

向TA提问 私信TA
展开全部
A、int*c=0x257GVB29 //这里的GVB 不是合法的16进制字符。 错误。 
B、int*k=2000000000//这个赋值 理论上是可以的,但实际上没什么意义。 因为不可能指定一个地址。 
X、int*m=4518916767848184967//和B类似 也是指定了一个无效的值。 
C、int*b=&a[0]//正确。 
D、int*s='CD1'//'CD1'不是合法字符串。 
E、int*a='D'//'D'只是一个字符, 等效于一个字符常量。 赋值给int*一样是非法的。

简单的说 Int*类型的初始化, 只能赋值一个指针。 不能是常数。 

只有C是对的。

更多追问追答
追问
int类型不是和char类型数据通用的么。。。。Ascll表里的,'CD1','D'
追答
这里类型不是int  而是int*
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式