C++中怎么获取字符串常量的地址?

书本里说“一个字符串常量是这样一个数组的首地址”char*f="DDD";cout<<&(*f);这样写我觉得应能获取到一串地址的。然而事实并不是这样。最后显示DDD问题... 书本里说“一个字符串常量是这样一个数组的首地址”
char *f = "DDD";
cout << &(*f);
这样写我觉得应能获取到一串地址的。然而事实并不是这样。
最后显示 DDD

问题:“&”应该是取地址而为什么访问到了数组?
怎么样取得这char数组的首地址?

拜托各位大神
展开
 我来答
BlueWanderer
2016-11-27 · TA获得超过9209个赞
知道大有可为答主
回答量:5673
采纳率:83%
帮助的人:1999万
展开全部
basic_ostream的<<运算符对const char *有重载,所以你传入char *类型指针会当字符串输出。cout << (void *)"DDD"就行了。

&(*f)就是f
帐号已注销
2016-11-27 · TA获得超过3954个赞
知道大有可为答主
回答量:1636
采纳率:77%
帮助的人:1232万
展开全部

你是要输出字符串字面量的地址是吧?

是的话把字符串字面量转成整数或者其他类型的指针就可以。

std::cout << ( long long )( "Hello World" ) << std::endl;
std::cout << ( void* )( "Hello World" ) << std::endl;
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式