黑马程序员技术交流社区
标题:
C语言部分:求大神帮我看一下程序崩溃的原因
[打印本页]
作者:
JamesFeng
时间:
2016-1-29 23:18
标题:
C语言部分:求大神帮我看一下程序崩溃的原因
#include<iostream>
using namespace std;
struct info
{
int age;
char *name;
};
void output(struct info personal)
{
cout<<"personal.age:"<<personal.age<<endl;
cout<<"personal.name:"<<personal.name<<endl;
}
void main()
{
cout<<"input age&name:"<<endl;
info person;
cin>>person.age;
cin>>person.name;
output(person);
}
源代码如上,程序运行会崩溃,我没有查出原因,麻烦大神帮我看一下,谢谢!
C:\Users\Administrator\Desktop
作者:
JamesFeng
时间:
2016-1-31 01:16
求指导……
作者:
一枚小刁民
时间:
2016-2-1 17:15
不要骗我 你这是C? C++吧
作者:
JamesFeng
时间:
2016-2-4 23:07
呃……确实是c++
可以帮我看一下是什么原因吗?谢谢!
作者:
韦德460
时间:
2016-2-5 14:10
你在结构体中定义了char *name;
name在这里指针字符串,存储在常量区(不可变)
解决办法是将char *name改为char name[100];
#include<iostream>
using namespace std;
struct info
{
int age;
char name[100];
};
void output(struct info personal)
{
cout<<"personal.age:"<<personal.age<<endl;
cout<<"personal.name:"<<personal.name<<endl;
}
int main()
{
cout<<"input age&name:"<<endl;
info person;
cin>>person.age;
cin>>person.name;
output(person);
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2