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

我凌乱了!关于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;
------解决方案--------------------
楼主可回头看下字符数组那一块的知识~ ~