程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> 詳解C++編程中數組的根本用法

詳解C++編程中數組的根本用法

編輯:關於C++

詳解C++編程中數組的根本用法。本站提示廣大學習愛好者:(詳解C++編程中數組的根本用法)文章只能為提供參考,不一定能成為您想要的結果。以下是詳解C++編程中數組的根本用法正文


可使用數組下標操作符 ([ ]) 拜訪數組的各個元素。 假如在無下標表達式中應用一維數組,組名盤算為指向該數組中的第一個元素的指針。

// using_arrays.cpp
int main() {
 char chArray[10];
 char *pch = chArray; // Evaluates to a pointer to the first element.
 char ch = chArray[0]; // Evaluates to the value of the first element.
 ch = chArray[3]; // Evaluates to the value of the fourth element.
}

應用多維數組時,在表達式中應用各類組合。

// using_arrays_2.cpp
// compile with: /EHsc /W1
#include <iostream>
using namespace std;
int main() {
 double multi[4][4][3]; // Declare the array.
 double (*p2multi)[3];
 double (*p1multi);

 cout << multi[3][2][2] << "\n"; // C4700 Use three subscripts.
 p2multi = multi[3];    // Make p2multi point to
          // fourth "plane" of multi.
 p1multi = multi[3][2];   // Make p1multi point to
          // fourth plane, third row
          // of multi.
}

在後面的代碼中, multi 是類型 double 的一個三維數組。 p2multi 指針指向年夜小為三的 double 類型數組。 本例中該數組用於一個,兩個和三個下標。 雖然指定一切下標更加罕見(如 cout 語句所示),然則以下的語句 cout 所示,有時其在選擇數組元素的特定子集時異常有效。

初始化數組
假如類具有結構函數,該類的數組將由結構函數初始化。假如初始值設定項列表中的項少於數組中的元素,則默許的結構函數將用於殘剩元素。假如沒無為類界說默許結構函數,初始值設定項列表必需完全,即數組中的每一個元素都必需有一個初始值設定項。
斟酌界說了兩個結構函數的Point 類:

// initializing_arrays1.cpp
class Point
{
public:
 Point() // Default constructor.
 {
 }
 Point( int, int ) // Construct from two ints
 {
 }
};

// An array of Point objects can be declared as follows:
Point aPoint[3] = {
 Point( 3, 3 )  // Use int, int constructor.
};

int main()
{
}

aPoint 的第一個元素是應用結構函數 Point( int, int ) 結構的;殘剩的兩個元素是應用默許結構函數結構的。
靜態成員數組(能否為 const)可在其界說中停止初始化(類聲明的內部)。例如:

// initializing_arrays2.cpp
class WindowColors
{
public:
 static const char *rgszWindowPartList[7];
};

const char *WindowColors::rgszWindowPartList[7] = {
 "Active Title Bar", "Inactive Title Bar", "Title Bar Text",
 "Menu Bar", "Menu Bar Text", "Window Background", "Frame" };
int main()
{
}

表達式中的數組
當數組類型的標識符湧現在 sizeof、address-of (&) 或援用的初始化之外的表達式中時,該標識符將轉換為指向第一個數組元素的指針。 例如:

char szError1[] = "Error: Disk drive not ready.";
char *psz = szError1;

指針 psz 指向數組 szError1 的第一個元素。 請留意,與指針分歧,數組不是可修正的左值。 是以,以下賦值長短法的:

szError1 = psz;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved