在 python 中,想要獲取變數型別通過type()
來獲取非常方便,列印也十分清晰。雖然 c++ 是顯式定義變數,但是有時候我們想通過變數名來獲取資料型別,就不如 python 方便了。
在 c++ 中,想要通過變數名來獲取資料型別,可以使用typeid(var).name()
來獲取,但是缺點是輸出形式比較難以辨識。在這裡,我們對 c++ 的所有資料型別進行一下總結,順便也便於以後查閱。
需要注意的是,此函式需要#include
,並且不同的編譯器下會有不同的顯示,這裡以 g++ 的編譯結果為例。
首先是執行結果:
char 型別顯示為: c
short 型別顯示為: s
int 型別顯示為: i
long 型別顯示為: l
long long 型別顯示為: x
int8_t 型別顯示為: a
int16_t 型別顯示為: s
int32_t 型別顯示為: i
int64_t 型別顯示為: l
unsigned char 型別顯示為: h
unsigned short 型別顯示為: t
unsigned int 型別顯示為: j
unsigned long 型別顯示為: m
unsigned long long 型別顯示為: y
uint8_t 型別顯示為: h
uint16_t 型別顯示為: t
uint32_t 型別顯示為: j
uint64_t 型別顯示為: m
float 型別顯示為: f
double 型別顯示為: d
char 型別顯示為: a1_c
short 型別顯示為: a2_s
int 型別顯示為: a3_i
long 型別顯示為: a4_l
long long 顯示為: a100_x
float 型別顯示為: a2_f
double 型別顯示為: a2_d
vector為: st6vectoriisaiiee // 注意這裡的i
vector為: st6vectoridsaidee // 注意這裡的d
string 型別顯示為: nst7__cxx1112basic_stringicst11char_traitsicesaiceee
int* 型別顯示為: pi
double* 型別顯示為: pd
double** 型別顯示為: ppd
指標陣列 型別顯示為: a3_pd // double* v[3]
陣列指標 型別顯示為: pa3_d // double (*v)[3]
string* 型別顯示為: pnst7__cxx1112basic_stringicst11char_traitsicesaiceee
std::vector* 為: pst6vectoridsaidee
std::vector* 為: pst6vectorinst7__cxx1112basic_stringicst11char_traitsicesaiceeesais5_ee
struct 型別顯示為: 8v_struct
struct 初始化後為: 8v_struct
class 型別顯示為: 7v_class
object 型別顯示為: 7v_class
function 型別顯示為: fvve
#include #include #include using namespace std;
class v_class{};
struct v_struct{};
void v_func(){}
int main()
cout << endl;
cout << endl;
// 正整數類別
cout << endl;
cout << endl;
// 浮點數類別
cout << endl;
// 陣列類別
;cout << "char 型別顯示為:\t" << typeid(v).name() << endl;
} ;
cout << "short 型別顯示為:\t" << typeid(v).name() << endl;
} ;cout << "int 型別顯示為:\t" << typeid(v).name() << endl;
} ;cout << "long 型別顯示為:\t" << typeid(v).name() << endl;
} ;
cout << "long long 顯示為:\t" << typeid(v).name() << endl;
} ;
cout << "float 型別顯示為:\t" << typeid(v).name() << endl;
} ;
cout << "double 型別顯示為:\t" << typeid(v).name() << endl;
} // 容器類別
// 字串類別
cout << endl;
// 指標類別
cout << endl;
// 結構體類別
// 結構體類別
// 類
// 物件
// 函式類別
return 0;
}
一文回顧Redis五大物件 資料型別
最新 redis記憶體 三個重要的緩衝區 最新 redis記憶體 記憶體消耗 記憶體都去哪了?最新 redis持久化 如何選擇合適的持久化方式 最新 redis持久化 aof日誌 redis 是乙個高效能的分布式記憶體型資料庫,在國內外各大網際網路公司中都有著廣泛的使用,即使是一些非網際網路公司中也...
C 的資料型別 資料型別的轉化
一 c 有15個預定義型別,其中13個是值型別,兩個是引用型別 string 和 object 這裡主要說明整型 浮點型 布林型以及引用型 1 整型資料 2 浮點型 浮點型從精度有低到高有float double decimal。他們的命名規則如下 1 float資料型別用於較小的浮點數,因為它要求...
C語言資料型別 一
todo 整型 短整型 16位 32767 32767 short si 32767 無符號短整型 16位 0 65535 unsigned short us 65535 printf short hd u short u n si,us 基本整型 32 64位 2147483622 2147483...