第5章 陣列與字串

2021-04-19 18:56:43 字數 1539 閱讀 3097

5.1

陣列array

5.1.1

陣列的概念 語法

型別陣列名;

型別陣列名

[元素個數

];不能定義長度為

0的陣列,即

裡不能是

05.1.2

記憶體中的陣列

獲得陣列的尺寸

(即元素的個數

)int n = sizeof(a)/sizeof(int)

5.1.3

陣列的初始化

初始化時,右值由

{}括起一組初始值列表

規則:定義陣列時,如元素個數為空(沒有指定),必須要同時進行初始化,否則編譯錯誤。

初始值的元素個數不能多餘陣列尺寸

double record[5] = ;//ok

當初始值的元素個數少於陣列尺寸時,未覆蓋到的數值將被初始化為

0初始化的形勢不能用於陣列的賦值(只能在初始化中使用)

double record[5] ;

record= ;//error

5.1.4

陣列元素的訪問

可以用來訪問陣列中每個元素 如

double a = record[0];

注意,陣列的下標都是從

0開始的

5.1.5

安全使用陣列下標

不要使用陣列尺寸之外的下標訪問元素,編譯器不會報錯!

5.1.6

多維陣列

p83如:

double record[4][5];

5.2字串

string分為2

類:std

和string

5.2.1

傳統的字串

字串可以儲存在字元陣列中

如char message = 「bluejoe

注意c++

會在每個字串常量末尾補充乙個「/0」

,以表示該字串結束。

5.2.2

安全使用字串

p865.2.3 std::sring

要想使用

string

類,不必須包含

頭,如#include

可以直接用「

+」將字串傳接起來 如

cout<

針對string物件s

,有如下常見操作

s.length()

返回字串長度,即字元個數。

s.empty()

判斷字串是否為空串

s.at(i)

返回字串第

i個字元

s[i]

返回字串第

i的字元,通

at[i]

s.substr(int i,int j)

獲取字串從i到

j之間的字串

注意,獲取

string

物件長度要使用

s.length()

,而不是

sizeof

。sizeof

返回的是

string

物件的儲存空間,不一定等於字元數目。

第3章 陣列與字串

程式3.1 逆序輸出 讀入一些整數,不超過100個,逆序輸出到一行中 include define maxn 105 常常難以精確計算出需要的陣列大小,陣列一般會比宣告的稍大一點,會更保險 int buf maxn 因為區域性變數存放在堆疊段中,若放在函式體內可能會導致棧溢位,一般在全域性部分宣告較...

第3章 字串 向量和陣列

using 宣告語句 編譯器從操作符左側所示作用域尋找右側那個名字 using namespace name 注 標頭檔案中不能有using宣告,標頭檔案中的內容會拷貝到所引用它的檔案中去,會引起名字衝突 標準庫型別string 表示可變長的字串行。包含在string標頭檔案 string的初始化方...

第3章 字串向量和陣列

1 標頭檔案不應該包含using宣告 2 直接初始化string str or string num,char 拷貝初始化 string str str2 3 getling cin,line 讀取一行直到遇到第乙個換行符讀取並丟棄換行符 4 如果一條語句中有size 函式,就不用int避免混用 5...