在 C++ 與資料庫領域中,「欄位寬度」通常指某個資料類型或資料表欄位在記憶體或儲存空間中所佔用的位元組數量。它直接影響資料的範圍、精度以及儲存效率。
| 資料類型 | 欄位寬度(位元組) | 說明 |
|---|---|---|
| int | 4 | 標準整數,佔 4 位元組(32 位元) |
| double | 8 | 雙精度浮點數,佔 8 位元組(64 位元) |
| char | 1 | 單一字元(多位元組字符集下通常為 1 位元組) |
| wchar_t | 2 | 寬字元(Unicode 字符集,通常為 2 位元組) |
| float | 4 | 單精度浮點數 |
| short | 2 | 短整數 |
| long long | 8 | 長長整數(64 位元) |
#include <iostream>
using namespace std;
int main() {
cout << "int 寬度: " << sizeof(int) << " bytes" << endl;
cout << "double 寬度: " << sizeof(double) << " bytes" << endl;
cout << "char 寬度: " << sizeof(char) << " byte" << endl;
cout << "wchar_t 寬度: " << sizeof(wchar_t) << " bytes" << endl;
return 0;
}
輸出結果(典型 32/64 位元 Linux/Windows 環境):
int 寬度: 4 bytes
double 寬度: 8 bytes
char 寬度: 1 byte
wchar_t 寬度: 2 bytes
sizeof 運算子在目標平台上確認。VARCHAR(50) 的寬度為 50 個字元(實際儲存可能更多位元組)。