读书人

小弟我凌乱了!关于C++中的char*

发布时间: 2012-04-08 14:38:30 作者: rapoo

我凌乱了!关于C++中的char*!求助!

C/C++ code
#include <iostream>#include <list>using namespace std;int main(){    char* a[]={"aaaa", "bbbb", "cccc"};    list<char*> clst(a,a+3);    for (list<char*>::iterator iter = clst.begin(); iter != clst.end(); iter++)    {        cout << *iter << endl;    }    return 0;}


如代码所示,list容器里面放的是char*,也就是指针吧?那么我用迭代器访问list的元素,应该显示的是指针的值吧?为什么结果是指针所指的字符串的值呢??书上翻不到答案,求解啊!

[解决办法]
要打印指针值,把指针cast成void *。
cout << static_cast<void*>(*iter) << endl;
[解决办法]
楼主可回头看下字符数组那一块的知识~ ~

读书人网 >C++

热点推荐