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

memset使用解决方案

2012-09-14 
memset使用在VC6下,若“int array[10]memset(array,0,10*sizeof(int))”,则正常,但如果是“int array[10]m

memset使用
在VC6下,若“int array[10];memset(array,0,10*sizeof(int));”,则正常,但如果是“int array[10];
memset(array,1,10*sizeof(int));”则array数组中的值全部是16843009,而不是1,请问这是什么原因,如何使数组中的元素全部值全部为1?

[解决办法]
memset是按字节去赋值的,,但你是INT数组,你数据里的一个整数是4个字节,赋完值后二进表示就是 00000001000000010000000100000001 转成十进制就是 16843009 

但是0无所谓的,4个字节都赋的0,还是=0 

整形数组初始化一般两种方法,
1是 int array[10]={1,1,1 ......};

2是 直接通过循环赋值,用法你应该也会,就不写了

热点排行