第四章 複合類型

複合類型:基於基本類型和浮點類型建立數組

4.1 數組

1、定義:

數組是一種數據格式,可以存儲多個同類型的值。編碼

2、數組聲明:

  條件:spa

  1. 存儲在每一個元素中的值的類型;
  2. 數組名;
  3. 數組中的元素數;

  格式:code

  

typeName arrayName[arraySize];

  注意:表達式arraySize指定元素數目,它必須是整型常數(如10)或const值,也能夠是常量表達式(如8*sizeof(int)),即其中全部的值在編譯時都是已知的。具體地說,arraySize不能是變量,變量的值是在程序運行時設置的。然而,能夠使用new運算符來避開這種限制。對象

  使用:能夠單獨訪問數組元素。方法是使用下標或索引來對元素進行編碼。C++數組從0開始編號。blog

  有效下標值的重要性:若是將一個值賦給不存在的元素months[101],編譯器並不會指出錯誤。可是程序運行後,這種賦值可能引起問題。索引

  sizeof運算符:內存

  注:sizeof運算符返回類型或數據對象的長度(單位爲字節)。若是將sizeof運算符用於數組名,獲得的將是整個數組中的字節數。字符串

3、數組的初始化規則

  1. 只有在定義數組時才能使用初始化,之後就不能使用了,也不能將一個數組賦給另外一個數組;
  2. 然而,能夠使用下標分別給數組中的元素賦值;
  3. 初始化數組時,提供的值能夠少於數組的元素數目;
  4. 若是初始化數組時方括號([])爲空,C++編譯器將計算元素個數。

4、C++11數組的初始化方法:(新增功能)

  1. 初始化數組時,可省略等號(=);
  2. 可不在大括號內包含任何東西,這將把全部元素都設置爲零;
  3. 列表初始化禁止縮窄轉換;

STL提供了一種數組替代品——模板類rector,C++11新增了模板類array。編譯器

4.2字符串

1、C++處理字符串的方式:

  ①第一種來自C語言,常被稱爲C-風格字符串;

  ②另外一種基於string類庫的方法。

2、C-風格字符串

  一、存儲在char數組中。

  二、特殊的性質:以空字符(null character)結尾,空字符被寫做\0,其中ASCII碼爲0,用來標記字符串的結尾。

  三、字符串定義、賦值

    ① 大量單引號

char cat[4] = {'c','a','t','\0'};

    ②使用一個雙引號括起來字符串,這種字符串被稱爲字符串常量或字符串字面值。

char bird[11] = "Mr.Cheeps";
char fish[] = "Bubbles";

注意:字符串常量(使用雙引號)不能與字符常量(使用單引號)互換。

  ‘S’是字符串編碼的簡寫表示。在ASCII系統上,‘S’只是83的另外一種寫法;

  「S」實際上表示的是字符串所在的內存地址。

  四、拼接字符串常量:

  任何兩個有空白(空格、製表符和換行符)分隔的字符串常量都將自動拼接成一個。

  注意:拼接時不會再被鏈接的字符串之間添加空格。忽視\0。

相關文章
相關標籤/搜索