【发布时间】:2021-02-04 09:15:49
【问题描述】:
cout 语句在指针初始化后不起作用。这段代码给了我一个分段错误。
#include <iostream>
using namespace std;
int main()
{
int *p;
*p=12;
cout<<"NOW THIS STATEMENT WILL NOT WORK";//BUT WHY?
cout<<*p;
return 0;
}
【问题讨论】:
-
answer-只需了解“指针存储地址”,因此如果您尝试直接初始化值,则不会发生这种情况,因为在这种情况下,指针没有该值的地址甚至该值也没有存储在任何地址...所以首先我们需要将该值存储在一个变量中,以便我们可以通过指针使用它。
标签: c++ pointers initialization cout