2 snail em snail_em 于 2017.01.11 09:53 提问

c++memset操作,导致函数内部变量全都变化了是什么情况
c++

memset(&ver, 0, 0x580);
进行这个操作之后我程序中这个函数内部的大部分变量都变成0了,这是什么情况0x580太大啦?但是结构体就这么大呀,

2个回答

tang_cheng
tang_cheng   2017.01.11 09:58
已采纳

首先确定一下ver是不是指针变量,如果是用下面代码写:

memset(&ver, 0, sizeof ver);
snail_em
snail_em 嗯呢 搞定了我还是用sizeof吧= =.结构体太大我定义东西搞少了
11 个月之前 回复
a29562268
a29562268   2017.01.11 18:53

这个函数本来就是用做初始化变量用的,初始化为0,char/0

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!