主题:C++指针的问题
aazham
[专家分:0] 发布于 2010-11-18 12:11:00
#include <iostream>
using namespace std;
int main()
{
int **p;
int a=3;
*p=&a;
cout<<**p<<endl;
}
为什么编译可以通过,编译出来却没结果,提示什么内存之类的答案。?
什么意思?怎么解决 ?
回复列表 (共5个回复)
沙发
josephkwok [专家分:530] 发布于 2010-11-18 12:46:00
指针p未赋值,虽然*p赋值了.
板凳
aazham [专家分:0] 发布于 2010-11-18 12:50:00
那应该怎么赋值呢?
3 楼
aazham [专家分:0] 发布于 2010-11-18 12:53:00
那应该怎么赋值呢?
4 楼
hobbily [专家分:20] 发布于 2010-11-18 13:55:00
#include <iostream>
using namespace std;
int main()
{
int **p1 = NULL;
int a=3;
int *p2 = &a;
p1 = &p2;
cout<<a<<endl;
cout<<**p1<<endl;
getchar();
return 0;
}
这样应该就可以了
5 楼
josephkwok [专家分:530] 发布于 2010-11-18 15:20:00
楼主的错误就相当于:
int *p;
int k=2;
*p=k;
我来回复