首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

怎么用memset给int数组初始化非0初值

2012-02-17 
如何用memset给int数组初始化非0初值1.给int数组赋非0初值int iArray[5]memset(ar, 2, sizeof(int) * 5)

如何用memset给int数组初始化非0初值
1.给int数组赋非0初值
int iArray[5];
memset(ar, 2, sizeof(int) * 5);
打印结果,发现数组的值不是2,如果赋0值,数组里值是正确的,请问是为什么?
2.给char数组赋值
char cArray[5];
memset(cArray, '2', sizeof(char) * 5);
打印结果,发现数组的值不是字符2,为什么int数组就不行呢,

请问对于int数组如何用memset初始化非0初值呢?



[解决办法]
因为memset只能逐个字节赋值,而int数组要求每4字节赋值。你这样用得到的是0x2020202这个整数。没有任何办法用memset做到这点
[解决办法]

探讨

因为memset只能逐个字节赋值,而int数组要求每4字节赋值。你这样用得到的是0x2020202这个整数。没有任何办法用memset做到这点

[解决办法]
探讨
因为memset只能逐个字节赋值,而int数组要求每4字节赋值。你这样用得到的是0x2020202这个整数。没有任何办法用memset做到这点

[解决办法]
memset只能设置单字节,不能4个字节4个字节设置

热点排行