選單
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

C++ 教程

C++ 主頁 C++ 簡介 C++ 入門 C++ 語法 C++ 輸出 C++ 註釋 C++ 變數 C++ 使用者輸入 C++ 資料型別 C++ 運算子 C++ 字串 C++ 數學 C++ 布林值 C++ If...Else C++ Switch C++ While 迴圈 C++ For 迴圈 C++ Break/Continue C++ 陣列 C++ 結構體 C++ 列舉 C++ 引用 C++ 指標

C++ 函式

C++ 函式 C++ 函式引數 C++ 函式過載 C++ 作用域 C++ 遞迴

C++ 類

C++ OOP C++ 類/物件 C++ 類方法 C++ 建構函式 C++ 訪問修飾符 C++ 封裝 C++ 繼承 C++ 多型 C++ 檔案 C++ 異常 C++ 日期

C++ 資料結構

C++ 資料結構與 STL C++ Vectors C++ List C++ Stacks C++ Queues C++ Deque C++ Sets C++ Maps C++ 迭代器 C++ 演算法

C++ How To

C++ 兩數相加 C++ 隨機數

C++ 參考

C++ 參考 C++ 關鍵字 C++ <iostream> C++ <fstream> C++ <cmath> C++ <string> C++ <cstring> C++ <ctime> C++ <vector> C++ <algorithm>

C++ 示例

C++ 示例 C++ 現實生活中的例子 C++ 編譯器 C++ 練習 C++ 測驗 C++ 證書


C++ 結構體 (struct)


C++ 結構體

結構體(也稱為 struct)是一種將幾個相關變數組合到一個地方的方式。結構體中的每個變數都稱為結構體的**成員**。

陣列不同,結構體可以包含許多不同的資料型別(int、string、bool 等)。


建立結構體

要建立結構體,請使用 struct 關鍵字並在花括號內宣告其每個成員。

聲明後,指定結構體變數的名稱(在下面的示例中為 **myStructure**)

struct {             // 結構體宣告
  int myNum;         // 成員(int 變數)
  string myString;   // 成員(string 變數)
} myStructure;       // 結構體變數

訪問結構體成員

要訪問結構體的成員,請使用點語法 (.)

示例

將資料分配給結構體成員並列印它

// 建立一個名為 myStructure 的結構體變數
struct {
  int myNum;
  string myString;
} myStructure;

// 為 myStructure 的成員賦值
myStructure.myNum = 1;
myStructure.myString = "Hello World!";

// 列印 myStructure 的成員
cout << myStructure.myNum << "\n";
cout << myStructure.myString << "\n";
自己動手試一試 »

一個結構體用於多個變數

您可以使用逗號 (,) 在多個變數中使用一個結構體

struct {
  int myNum;
  string myString;
} myStruct1, myStruct2, myStruct3; // 多個結構體變數用逗號分隔

此示例演示如何在兩個不同的變數中使用結構體

示例

使用一個結構體表示兩輛汽車

struct {
  string brand;
  string model;
  int year;
} myCar1, myCar2; // 我們可以在這裡用逗號分隔新增變數

// 將資料放入第一個結構體
myCar1.brand = "BMW";
myCar1.model = "X5";
myCar1.year = 1999;

// 將資料放入第二個結構體
myCar2.brand = "Ford";
myCar2.model = "Mustang";
myCar2.year = 1969;

// 列印結構體成員
cout << myCar1.brand << " " << myCar1.model << " " << myCar1.year << "\n";
cout << myCar2.brand << " " << myCar2.model << " " << myCar2.year << "\n";
自己動手試一試 »


命名結構體

透過給結構體命名,您可以將其視為一種資料型別。這意味著您可以在程式的任何地方隨時使用此結構體建立變數。

要建立命名結構體,請將結構體名稱緊跟在 struct 關鍵字之後

struct myDataType { // 此結構體名為 "myDataType"
  int myNum;
  string myString;
};

要宣告使用該結構體的變數,請將結構體的名稱用作變數的資料型別

myDataType myVar;

示例

使用一個結構體表示兩輛汽車

// 宣告一個名為 "car" 的結構體
struct car {
  string brand;
  string model;
  int year;
};

int main() {
  // 建立一個 car 結構體並存儲在 myCar1 中;
  car myCar1;
  myCar1.brand = "BMW";
  myCar1.model = "X5";
  myCar1.year = 1999;

  // 建立另一個 car 結構體並存儲在 myCar2 中;
  car myCar2;
  myCar2.brand = "Ford";
  myCar2.model = "Mustang";
  myCar2.year = 1969;
 
  // 列印結構體成員
  cout << myCar1.brand << " " << myCar1.model << " " << myCar1.year << "\n";
  cout << myCar2.brand << " " << myCar2.model << " " << myCar2.year << "\n";
 
  return 0;
}
自己動手試一試 »

×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援