C语言 结构体清零

各位高手,我现在的那个程序有个地方有点麻烦,就是初始化我的结构体。我想弄一个函数初始化。但是格式不大会。我是先:intqingling();再在主函数里面调用:qingl... 各位高手,我现在的那个程序有个地方有点麻烦,就是初始化我的结构体。我想弄一个函数初始化。但是格式不大会。我是先:int qingling();再在主函数里面调用:qingling();最后是qingling()
{
haoma.shou = 0;
haoma.zhong = 0;
haoma.wei = 0;
}
但是我最后发现没有清零啊~
悲剧...
谢谢各位~
展开
 我来答
出家人词悲
高赞答主

2016-01-13 · 大脑停止不了思考
知道大有可为答主
回答量:1.4万
采纳率:12%
帮助的人:3967万
展开全部
结构体是直接做入参的。复制只会将qingling函数中的数据清零。应用指针
void qingling(structType* haoma){
haoma->shou = 0;
haoma->zhong = 0;
haoma->wei = 0;
}

这个和qingling(int i)函数中改i值,但调用者值不变是一回事。
ratstar
2011-02-14 · TA获得超过496个赞
知道小有建树答主
回答量:648
采纳率:0%
帮助的人:601万
展开全部
你的结构体是直接做入参的吧。这样的复制只会将qingling函数中的数据清零。你应用指针
void qingling(structType* haoma){
haoma->shou = 0;
haoma->zhong = 0;
haoma->wei = 0;
}

这个和qingling(int i)函数中改i值,但调用者值不变是一回事。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
aaron_liuf
2011-02-14
知道答主
回答量:5
采纳率:0%
帮助的人:3.4万
展开全部
结构体指针传入函数, 一个memset搞定!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帅得有点坏
2011-02-14 · TA获得超过1149个赞
知道小有建树答主
回答量:463
采纳率:0%
帮助的人:478万
展开全部
typedef struck A
{
int shou;
int zhong;
int wei;
}haoma;

下面是我给你写的代码,你直接就能用。
void qingling(haoma *a)
{
memset(a,0,sizeof(haoma));
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
MAGEHE
2011-02-14 · 超过19用户采纳过TA的回答
知道答主
回答量:72
采纳率:0%
帮助的人:47.2万
展开全部
说清楚些,代码贴出来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式