初始化(清0)数组的函数 - CSDN - FAQ
来源:百度文库 编辑:神马文学网 时间:2024/05/21 03:22:25
记得以前在哪看到过几个初始化数组的函数,可当时记下来,请大家帮帮忙。
它的做用相当于把每个数组元素付0值,像memset(...)那样的。
谢谢!!!
---------------------------------------------------------------
int a[10][50];
memset(a, 0, sizeof(a));
---------------------------------------------------------------
char a[125];
memset(a,0,125);
第一个参数是要清0的数组,第二个参数是你
要设置的值,比如你可以把一个数组全部设为1
memeset(a,1,125);
最后一个参数是数组长度,以字节为单位。。。
---------------------------------------------------------------
要看你的数组类型了。如果数组的每个成员是一个class或者struct,而且他们的成员变量
包含class或者struct变量,可能就不能用memset来赋初始值了。比如:
struct TestStruct
{
int num;
char buf[16];
AnsiString Name;
};
TestStruct ArrayTS[10];
此时就不能用 memset(ArrayTS, 0, sizeof(ArrayTS));
---------------------------------------------------------------
同意楼上所有,如果不嫌累,写个循环也可以。:)
for(...){x[i]=0;}
---------------------------------------------------------------
很多情况下,偶都是在使用前将其清空的
---------------------------------------------------------------
VOID ZeroMemory(
PVOID Destination, // address of block to fill with zeros
DWORD Length // size, in bytes, of block to fill with zeros
)
//---------
VOID FillMemory (
PVOID Destination, // pointer to block to fill
DWORD Length, // size, in bytes, of block to fill
BYTE Fill // the byte value with which to fill
);
这个应该也可以吧???!!