假定有char * P="Hello";,要输出这个字符串的地址值的正确写法是()

作者:高老师 浏览 0

假定有char * P="Hello";,要输出这个字符串的地址值的正确写法是()


A、

cout<< *P


B、

cout<
C、

cout<<&P


D、

cout<<(void *)P


【正确答案】:D
【题目解析】:

char* 是声明一个字符类型的指针。这个指针指向的地址上只能存放字符类型的值。
由于C++标准库中I/O类对<<操作符重载,因此在遇到字符型指针时,会将其当作字符串名来处理,输出指针所指的字符串。既然这样,那么我们就别让它知道那是字符型指针,所以得用到强制类型转换,把char的指针转换为无返回值指针类型,即cout<<(void *)P,故选D。
A输出的是H;B输出的是hello;C输出的是指针的地址。


📱 扫码体验刷题小程序

微信小程序二维码

扫一扫使用我们的微信小程序

热门题目

已复制到剪贴板