c++程序编译通过,但是运行时显示exe文件停止运行是怎么回事?

2024-11-04 06:05:16
推荐回答(3个)
回答1:

void setting::setmember()
{
char* c="00";
char* point="0000";
cout<<"请输入集合元素(注意:当输入0000时表示集合元素输入完毕!)";
while(strcmp(c,point)!=0)
{
cin>>c;
a[count]=c;
count++;
}
cout<<"集合输入完毕"<}
这里的a[count]=c;有问题,不能这样用

回答2:

setmember 函数中

char* c="00";
char* point="0000";

不能直接对未申请空间的指针赋值

可改成下面代码

char c[]="00";
char point[]="0000";

回答3:

setmember里面的count没有初始化。你为setting类添加一个构造函数,在构造函数里面添加上count=0就行了。