對於memset是按照1位元組為單位對記憶體進行填充。
對於int型:
可以對**-1和0進行初始化
若對無窮大用memset初始化,必須是0x3f3f3f3f**,不能是99999這樣的無窮大。且型別必須是int型,不能是別的型別。
fill也能進行初始化,原型是
fill(vector.begin(),vector.end(),val)
將陣列從初位置到末位置的每乙個值都賦值為val。
charch[
20];inta[
20];memset(a
,0,sizeof(a
));對
memset(a
,-1,
sizeof(a
));對
memset(a
,1,sizeof(a
));錯
memset(a
,2,sizeof(a
));錯
fill(a
,a+n
,1);
對fill(a
,a+n
,213233);
對fill(a
,a+n
,0.1);
對fill(ch
,ch+n
,'*');
對
思想的昇華,在於每天的平凡事中
cpp除了memset 初始化還有fill 呢
參考部落格 cpp reference 參考 memset 是 cstring 裡面的函式,用處也主要是給char型別的字串賦初值,用在int型別陣列是不合理的用法。那麼對於非字串的容器該如何賦初值呢?include include include using namespace std intma...
fill和memset對結構體進行初始化和覆蓋
fill的標頭檔案 include memset的標頭檔案 include或 include memset可以初始化整個結構體,或者結構體中的某個陣列,但只能初始化為0或 1 fill只能初始化結構體中的某個陣列,不能初始化整個結構體,但可以任意賦值 在結構體定義的同時初始化 在主函式中的覆蓋,同理...
memset初始化陣列
memset初始化陣列 結構體也可初始化 不過我在此處並未對結構體初始化.memst按位元組進行初始化,可以選擇將陣列初始化為0或初始化為 1 include include include include include using namespace std int main include i...