各位帮我看一下这个程序,很简单的。谢谢!
#include<iostream.h>
void main()
{
char *p;
cout<<"enter the char"<<endl;
cin>>p;
}
结果程序出现非法操作.为什么??
谢谢!!
问题点数:40、回复次数:5Top
1 楼panda_lin(熊猫)回复于 2002-10-21 18:56:38 得分 5
指针没有初始化!!!Top
2 楼Vicar2(???)回复于 2002-10-21 18:58:52 得分 5
指针指到哪了?系统区怎么办?
char a[100];
char *p=a;
........Top
3 楼CTGX(欣)回复于 2002-10-21 19:04:53 得分 5
指针的初始化不是像楼主你那样的。应该像楼上那位仁兄的做法。你声明的是一个指针变量,要令它指向一个地址,不是像其他数据变量那样初始化的。Top
4 楼wqy1978(吃猫鱼)回复于 2002-10-21 19:08:14 得分 10
#include<iostream.h>
void main()
{
char p;
cout<<"enter the char"<<endl;
cin>>p;
}
我看你程序的意思是这样吧,这样就对啦,指针必须初始化的!
Top
5 楼15962(15962)回复于 2002-10-21 21:05:15 得分 15
#include<iostream.h>
void main()
{
char p=NULL;//防止指针悬空,故先赋为null
cout<<"enter the char"<<endl;
cin>>p;
}
但你只读一个数据,到底想干什么阿?有没有什么操作Top




