The C++ Programming Language 学习笔记 第5章 指针、数组和结构

        1、关于输出指向字符的指针的值。

        现在定义,char c='a',char* pc=&c。在C中,输出该值只需要printf("%p\n",pc);而在C++中,如果cout<<pc<<endl;则会出现奇怪的一串字符,怎么回事呢。由于C++标准库中I/)类对<<操作符重载,因此在遇到字符型指针时会将其当作字符串名来处理,输出指针所指的字符串。所以我们可以将其先转化为void*,再输出。 cout << static_cast<const void *>(pc) << endl。有点麻烦,不过平时一般也不会要求输出这个值,所以就记住就好啦。

posted @ 2015-04-11 22:33  一个大叔  阅读(164)  评论(0编辑  收藏  举报