是否保证memset会清除结构中的填充位?
发布时间:2020-12-16 05:55:49 所属栏目:百科 来源:网络整理
导读:一般来说,根据C标准,它是否保证带有0的memset()会清零C结构中的填充位? gcc怎么样? 例如,像: struct MyStruct{ unsigned char member1; unsigned int member2; char member3; unsigned char member4; float member5; };struct MyStruct ms;memset(ms,size
一般来说,根据C标准,它是否保证带有0的memset()会清零C结构中的填充位?
gcc怎么样? 例如,像: struct MyStruct { unsigned char member1; unsigned int member2; char member3; unsigned char member4; float member5; }; struct MyStruct ms; memset(&ms,sizeof( struct MyStruct)); 解决方法
也许值得注意的是,memset不知道你的结构(或数组,或原始,或任何大部分的内存,你碰巧释放它),所以即使它想要保持填充位不变,甚至知道他们在哪里.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |