2 memset( )
2.1.2 malloc vs calloc
2.2 字元陣列清空 或 賦值
2.3 結構體清零:
2.4 結構體陣列清零:
長度容量 = sizoef(a) / sizeof(a[0])
二維陣列行數 = sizeof(a) / sizeof(a[0])
二維陣列列數 = sizeof(a[0]) / sizeof(a[0][0])
sizeof(char);
1位元組sizeof(bool);
1位元組sizeof(short);
2位元組sizeof(int);
4位元組sizeof(long);
4位元組sizeof(float);
4位元組sizeof(double);
8位元組以上方法只適用於main函式中可以
子函式傳參就不行了
void test(int a)
cout << "建立完成" << endl << endl;
}void print(int a)
if(i == 0)
cout << "為空!" << endl << endl;
memset() 不能用於賦值,但 字元陣列可以
memset(a, 2, sizeof(a)); //對於數字陣列a就是不能全部元素為2!使用錯誤!
但是可以賦值為乙個很大的值,有乙個,它是inf = 0x3f3f3f3f
具體解析參見:
例子:
// 不能給數字陣列賦 除了 0以外的值 !
#include#define num 100
using namespace std;
int length;
void creat(int a)
cout << "建立完成" << endl << endl;
}void print(int a)
if(i == 0)
cout << "為空!" << endl << endl;
字元陣列用memset
字元指標用null
空的字元陣列或指標用 puts() 輸出,用 cout 輸出程式會停止!
cout << "建立完成" << endl << endl;
}void print(sqlist a)
cout << endl << endl;
} else
cout << "為空!" << endl << endl;
cout << "建立完成" << endl << endl;
}void print(sqlist a)
cout << endl << endl;
}else
cout << "為空" << endl << endl;
} cout << endl << endl;
} else
cout << "為空!" << endl << endl;
陣列 矩陣清零
給定乙個矩陣,如果有零元素那麼就將零元素所在的行和列都置為零。given a m x n matrix,if an element is 0,set its entire row and column to 0.do it in place.題目的難點就在於,如果遇到零元素之後馬上在矩陣上操作,將所...
開燈問題與陣列清零
分析 用aa 表示編號為1,2,3,4,n的燈是否開著。模擬這些操作即可 注意1menset a,0,sizeof a 的作用是吧陣列a清零,它也在string.h中定義。雖然也能用for迴圈完成相同的任務,但是用memset又方便又快捷。另乙個技巧在輸出 為了避免輸出多餘的空格,設定了乙個標誌變數...
sizeof關鍵字獲取陣列容量
假設有如下定義的一維陣列 intarray 8 那麼,這個 array 陣列佔據多少個位元組容量?我們可以思考如下 1 array 陣列有8個元素 2 陣列每個元素是int型別,由於int型別佔據4個位元組 所以,array陣列就占用8 4 32個位元組的空間。程式測試例子如下 程式執行結果如下 可...