C++ 結(jié)構(gòu) struct
c++ 結(jié)構(gòu) struct
c/c++ 數(shù)組允許定義可存儲相同類型數(shù)據(jù)項的變量,但是結(jié)構(gòu)是 c++ 中另一種用戶自定義的可用的數(shù)據(jù)類型,它允許您存儲不同類型的數(shù)據(jù)項。
結(jié)構(gòu)用于表示一條記錄,假設(shè)您想要跟蹤圖書館中書本的動態(tài),您可能需要跟蹤每本書的下列屬性:
- title
- author
- subject
- book id
1. 定義結(jié)構(gòu)
為了定義結(jié)構(gòu),您必須使用 struct 語句。struct 語句定義了一個包含多個成員的新的數(shù)據(jù)類型,struct 語句的格式如下:
struct [structure tag]
{
member definition;
member definition;
...
member definition;
} [one or more structure variables]; structure tag 是可選的,每個 member definition 是標準的變量定義,比如 int i; 或者 float f; 或者其他有效的變量定義。在結(jié)構(gòu)定義的末尾,最后一個分號之前,您可以指定一個或多個結(jié)構(gòu)變量,這是可選的。下面是聲明 book 結(jié)構(gòu)的方式:
struct books
{
char title[50];
char author[50];
char subject[100];
int book_id;
}book;
2. 訪問結(jié)構(gòu)成員
為了訪問結(jié)構(gòu)的成員,我們使用成員訪問運算符(.)。成員訪問運算符是結(jié)構(gòu)變量名稱和我們要訪問的結(jié)構(gòu)成員之間的一個句號。您可以使用 struct 關(guān)鍵字來定義結(jié)構(gòu)類型的變量。下面的實例演示了結(jié)構(gòu)的用法:
#include #include
using namespace std;
struct books
{
char title[50];
char author[50];
char subject[100];
int book_id;
};
int main( )
{
struct books book1; // 聲明 book1,類型為 book
struct books book2; // 聲明 book2,類型為 book
// book1 詳述
strcpy( book1.title, "learn c++ programming");
strcpy( book1.author, "chand miyan");
strcpy( book1.subject, "c++ programming");
book1.book_id = 6495407;
// book2 詳述
strcpy( book2.title, "telecom billing");
strcpy( book2.author, "yakit singha");
strcpy( book2.subject, "telecom");
book2.book_id = 6495700;
// 輸出 book1 信息
cout << "book 1 title : " << book1.title < 

