• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

浅析char 指针变量char *=p 这个语句的输出问题

c语言 搞代码 4年前 (2022-01-06) 26次浏览 已收录 0个评论

下面小编就为大家带来一篇浅析char 指针变量char *=来源gao@!dai!ma.com搞$$代^@码!网p 这个语句的输出问题。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

学习指针的时候我一直有个疑惑,请看下面的代码:

 #include  using std::cout; void main() { int num=5; int *nPtr=# cout<<nPtr;//输出指针的地址。但是会报错<<没有直接输出int *地址的功能 return ; }

但是,将int 改成char 类型就不会报错,可以输出字符串。同样是指针,这次为何没有输出地址(理应输出指针代表的地址,但是<<并没有重载地址输出的功能所以报错)呢?

 #include  using std::cout; void main() { char *nPtr="Address"; cout<<nPtr;//输出字符串Address; return ; }

原来,输出流运算符<<重载了输出功能,可以自动判断类型,int直接输出,char *就输出所代表的字符串,如果要输出地址,必须使用强制类型转换函数static_cast转换成十六进制数字,其它类型的指针比如int *double *直接输出会报错

 #include  using std::cout; void main() { char *nPtr=“请问我”; cout<<nPtr<<"下个输出是指针地址  "<<static_cast(nPtr);//语句会报错,不能输出指针。 return ; }

以上就是浅析char 指针变量char *=p 这个语句的输出问题的详细内容,更多请关注gaodaima搞代码网其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:浅析char 指针变量char *=p 这个语句的输出问题
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址