您的位置:首页 > 其它

Cout输出字符地址问题

2012-01-07 13:33 267 查看
Cout输出字符型地址时,需要注意

例:

struct   
{
       int a;
       char b;
}A;           

int main()

{

std::cout<<&A.a<<std::endl //肯定不能输出正确地址

//正确

std::cout<<static_cast<   void   *  > (   &   A.b  )<<std::endl;

}

//

原因:

输出字符型变量的地址 

被认为是char   * 

char   *被cout   认为是输出一个字符串 

static_cast用于隐式类型转换, 

而   char   *到int不可以 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  struct