请问关于memset函数的一点小疑惑
请教关于memset函数的一点小疑惑突然有一点迷糊了.以前一般都是这么用,char szTmp[20] memset(szTmp, 0,
请教关于memset函数的一点小疑惑
突然有一点迷糊了.
以前一般都是这么用,char szTmp[20]; memset(szTmp, 0, sizeof(szTmp) / sizeof(char));
unsigned long rssi[5][16];
//memset(rssi, 0, sizeof(rssi);可以全部置0
//memset(rssi[0], 0, sizeof(rssi[0])/sizeof(unsigned long));rssi[0]前四个元素被置0
//memset(rssi[0], 0, sizeof(rssi[0]);rssi[0]里的元素全置0
函数原型:void *memset(void* dest, int c, size_t count);
第三个参数不是元素的个数吗?为啥我传16进去只有前4个元素置0了,(现在看来是变量所占内存大小了)
memset(type, 0, sizeof(type);//不管什么类型(结构体,类,变量)这么用就没问题是不是?
[解决办法]memset---------mem 对内存进行操作的 你的想法是对的
[解决办法]memset(type, 0, sizeof(type);//不管什么类型(结构体,类,变量)这么用就没问题是不是?
是的!一个地址,一个是赋的值, 一个是长度!
[解决办法]方法是对的,只是二维数组的计算不同于一维数组。