C/C++中結構體總結筆記

結構體的定義方式

在C/C++中結構體的定義方式有不少種,作個簡單的總結。

定義方式1:

struct st{
int a;
};

定義方式2:

struct _st{
int a;
} st;

定義方式3:

struct {
int a;
} st;

定義方式4:

typedef struct {
int a;
} st a;
或者
typedef struct _std {
int a;
} st a;

區別:

以上幾種定義方式比較經常使用的,其中方式1只是定義了一中結構體類型,使用的時候須要定義相應的結構體變量。
好比,在C語言中:
struct st ex1;
在C++中:
st ex1;
方式2是同時定義告終構體類型_st並聲明告終構體變量st。
方式3是直接聲明瞭一個結構體變量st,這個是不能看成類型來使用的;
方式4是定義了一種結構體類型st。這種定義方式和第一種定義方式的區別就是在C語言中使用該結構體類型的時候,方式1須要使用關鍵字struct,而方式4是不須要的。好比:
方式1:struct st ex1; 方式4:st ex1.在C++中兩種定義方式在使用上是沒有什麼區別的。
而C中的結構體和C++中的結構體還有,C++中的結構體和C++中的類的區別先不在這裏總結。
相關文章
相關標籤/搜索