C++赋值问题

[复制链接]
查看11 | 回复3 | 2010-5-12 14:45:08 | 显示全部楼层 |阅读模式
已知:int a,*pa;double d,*pd;下列赋值表达式中合法的是()。.
A)pa=&d B)pa=a C)pa=pd D)pa=(int *)&d

回复

使用道具 举报

千问 | 2010-5-12 14:45:08 | 显示全部楼层
答案是D;指针是通过指向地址而获得存储单元的内容的,int的a,其实已经是一个未赋值的常量,要通过调用地址才能和pa等同,即pa=&a;但是又同时又要明确是的d,是双精度的整形,不能直接赋值给单精度的,选项D是强制类型转换,d已经由双精度类型转换成单精度类型了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行