遇到问题:c++ 直接cout输出char类型变量地址乱码

输出char和int类型变量的地址:代码如下

运行结果如下:

结果:

1)利用printf、cout(强制类型转换)可以正确输出char类型变量地址

2)cout直接输出char类型变量地址,输出结果为乱码

原因:

cout对于char* 参数,直接输出字符串(程序将其类型当做一个字符串的首地址)--对于其他类型都是输出指针

字符串以空终止符(‘’)结尾,&b是一个char*变量,但&b保存的字符没有终止符,所以输出乱码

原文地址:https://www.cnblogs.com/MissZhang-154/p/13416755.html