时间:2021-06-24 08:18:26 | 栏目:C代码 | 点击:次
首先看下面这个代码实例:
#include <iostream> using namespace std; int main() { char *str = "this is a test"; cout << "str=" << str << endl; cout << "*str=" << *str << endl; cout << "&str" << &str << endl; system("pause"); return 1; }
其输出结果为:
看到了一些例子里面直接使用cout<<指针名
,刚开始感觉很疑惑,本来以为直接输出该指针,结果输出的是指针所指向的内存中存放的内容,直到读到“/0”结束标志结束。后来查资料发现这是编译器所预先设定的规则,其输出内容就是这样。另外,如果直接使用*str, 这里str指针变量存储的是它所指向的变量的首地址,则*str输出的内容是指针指向内容的首字符自然不难理解。
总结