C++ memset function使用

memset函数是赋值函数,按照开辟的内存空间进行赋值,给定首地址开始进行赋值,如下边a告知字符首地址,开始按开辟空间进行赋值。
例如,下边代码:

char a[10];
memest(a,0,10);

首先注意,memset函数是逐字节进行赋值的,下属赋值方式需要注意:

int a_int[10];
memest(a_int, 0,4);//只是针对a_int[0]赋值了,赋值内容为0x00000000 0x0000000 0x00000000 0x00000000
//试图给a_int赋值为1时便出了问题。
memset(a_int,1,32)// 例如a_int[0]为 0x00000001 0x0000001 0x00000001 0x00000001很明显不是1

所以给非char类型字符赋值是,要注意,只能赋值0或者-1

你可能感兴趣的:(c++)