鱼C论坛

 找回密码
 立即注册
查看: 1329|回复: 3

[已解决]新手求教错误

[复制链接]
发表于 2021-5-6 22:34:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
typedef struct
{  char s[10];
   int t;
}ST;
getdata(ST *p)
{scanf("%s%d",p->s,&p->t);}
main()
{ ST *a;
        getdata(a);
        printf("%s,%d\n",a->s,a->t);
}
为什么会出现不能被写入的错误。cannot open Debug/你i.exe for writing
最佳答案
2021-5-7 00:23:00
ST *a;
getdata(a);
错误是没有给指针变量a分配内存就调用了。解决办法:
1.  ST *a = (ST *)malloc(sizeof(ST));
或者:
ST  a;
getdata(&a);
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-5-6 23:34:47 From FishC Mobile | 显示全部楼层
        这是编译程序无法输出编译好的可执行程序文件 "Debug/你i. exe",通常原因,是这个磁盘路径不存在或没有写权限或这个程序文件正在运行中。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-7 00:23:00 | 显示全部楼层    本楼为最佳答案   
ST *a;
getdata(a);
错误是没有给指针变量a分配内存就调用了。解决办法:
1.  ST *a = (ST *)malloc(sizeof(ST));
或者:
ST  a;
getdata(&a);
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2021-5-8 11:09:28 | 显示全部楼层
chxchxkkk 发表于 2021-5-7 00:23
ST *a;
getdata(a);
错误是没有给指针变量a分配内存就调用了。解决办法:

谢谢哈,我说为什么变量可以运行,指针就不可以了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-1 08:56

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表