具體memset用法網路資源有很多,以下介紹個人心得。===================================================================
memset 用法
(第三個參數為位元組數)1,對於字元數組char a[10];memset(a,'A',sizeof(a));2,對於整形數組int a[10];memset(a,0,sizeof(int)*10);整形數組也只能填充0和-1,而double類型則只能填充0.根據二進位儲存double類型原理若使用memset(a,0,sizeof(a));在vs2005內可安全執行,但到了OJ上會出現runtime error報錯
//保留最終解釋權;若使用memset(a,0,10);則數組亂碼,因為int需要4個位元組數表示一個十進位。這裡僅表示了2個半數====================================================================比較sizeof(int)與sizeof(a)關係sizeof(int)為擷取類型位元組數,如果作業系統為32位,則結果為4;而sizeof(a)則是擷取a的 位元組數;====================================================================sizeof()對結構體與類取位元組操作:struct def{int data;double data1;char data2;};位元組總數為:int m=4+4+8+1=17,17>sizeof(double),添加至sizeof(double)的倍數因為根據vc的對齊法則得int 之後為double ,增加總數至8,進行相加。由於m>sizeof(double),使mz增加至sizeof(double)的倍數。這個的sizeof(double)為結構體內位元組數最多類型。===========================================================================今天做了道簡單的DP水題後,發現對memset以及sizeof()都不甚瞭解。補充基礎。===========================================================================參考資料:http://dev.csdn.net/Develop/article/42/42446.shtm===========================================================================自從寫了高校杯的文檔後,發現自己要加強這方面的專業水準,為了日後的發展~~