weixin_50947427 2021-07-06 12:55 采纳率: 66.7%
浏览 88
已采纳

c语言程序异常退出。。。。。

在vs code上能正确运行,但是在devc++上会显示process exited with return value 3221225477
查了一下是跟指针有关,可我实在是不太懂
我先定义了一个结构:
struct person{
char *name;
………
};
再定义一个结构:
struct addressbooks{
struct person array[500];
int nowsize;
};
在另一个函数里,是这样定义的:
void addperson(struct addressbooks *p){
char *namescan;
scanf("%d",&namescan);
p->array[p->nowsize].name=namescan;
}

是不是这里出错了?我写的是通讯录管理系统,用c语言。上面那个函数是添加联系人功能。在输入姓名后就退出了,是不是没赋值成功。c语言学的不扎实,希望大佬帮帮忙啦

  • 写回答

2条回答 默认 最新

  • CSDN专家-link 2021-07-06 13:09
    关注

    改成:
    char namescan[100];
    scanf("%s",namescan);
    没有给字符指针分配空间啊

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 win11家庭中文版安装docker遇到Hyper-V启用失败解决办法整理
  • ¥15 gradio的web端页面格式不对的问题
  • ¥15 求大家看看Nonce如何配置
  • ¥15 Matlab怎么求解含参的二重积分?
  • ¥15 苹果手机突然连不上wifi了?
  • ¥15 cgictest.cgi文件无法访问
  • ¥20 删除和修改功能无法调用
  • ¥15 kafka topic 所有分副本数修改
  • ¥15 小程序中fit格式等运动数据文件怎样实现可视化?(包含心率信息))
  • ¥15 如何利用mmdetection3d中的get_flops.py文件计算fcos3d方法的flops?