記得以前在哪看到過(guò)幾個(gè)初始化數組的函數,可當時(shí)記下來(lái),請大家幫幫忙。
它的做用相當于把每個(gè)數組元素付0值,像memset(...)那樣的。
謝謝?。?!
---------------------------------------------------------------
int a[10][50];
memset(a, 0, sizeof(a));
---------------------------------------------------------------
char a[125];
memset(a,0,125);
第一個(gè)參數是要清0的數組,第二個(gè)參數是你
要設置的值,比如你可以把一個(gè)數組全部設為1
memeset(a,1,125);
最后一個(gè)參數是數組長(cháng)度,以字節為單位。。。
---------------------------------------------------------------
要看你的數組類(lèi)型了。如果數組的每個(gè)成員是一個(gè)class或者struct,而且他們的成員變量
包含class或者struct變量,可能就不能用memset來(lái)賦初始值了。比如:
struct TestStruct
{
int num;
char buf[16];
AnsiString Name;
};
TestStruct ArrayTS[10];
此時(shí)就不能用 memset(ArrayTS, 0, sizeof(ArrayTS));
---------------------------------------------------------------
同意樓上所有,如果不嫌累,寫(xiě)個(gè)循環(huán)也可以。:)
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
);
這個(gè)應該也可以吧?????!
聯(lián)系客服