您的位置:首页 > 其它

memset深入分析(注意事项)

2013-03-21 11:57 274 查看
函数原型:memset(void *buffer,int c,size_t n);

1、size_t 是字节为单位

内存中一个INT型4个字节,如下:

int b ;

memset ( &b, 1, 4);

运行后:b = 0x01010101;

2、深入体会以字节为单位

如下代码:

char chA[10];

memset(chA, 1, 10 );

注意对比memset函数第一个参数与上小节中的差异!一个带取地址符“&”,一个不带。为啥呢?因为memset函数是以字节为单位,若参数不是字节,则以地址进行操作。所以第一节中会出现那样的运行结果!所以,结构体等进行memset操作时,也要加取地址符。

3、操作数个数

memset最后一个参数是操作个数,数组或者非字节变量要注意,建议使用sizeof()进行操作.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: