C++ Primer 學習筆記(八) ---- 第四章 數組和指針(3)
一、知識點
1、數組
2、指針的引入
3、C風格字符串
4、多維數組
二、要點
3、C風格字符串
(1)、C風格字符串,是以空格null結束的字符數組。下面是操作C風格字符串的標準庫函數:strncat和strncoy是比較安全的函數,推薦使用。
操作C風格字符串的標準庫函數
strlen(s)
返回s的長度,不包括結束符null
strcmp(s1,s2)
比較2個字符串,相同返回0,s1>s2返回正數,s1<s2返回負數
strcat(s1,s2)
將字符s2連接到s1后,并返回s1
strcpy(s1,s2)
將s2復制給s1,并返回s1
strncat(s1,s2)
將s2的前n個字符連接到s1后,并返回s1
strncpy(s1,s2)
將s2的前n個字符復制給s1,并返回s1
(2)、動態數組
const對象的數組,在定義時必須提供初始化:
// 錯誤:沒有提供初始化
const int *pci_bad = new const int[100];
// 正確:明確調用構造函數初始化
const int *pci_ok = new const int[100]();
// 正確:使用默認的構造函數初始化(這種情況下,該類型必須提供默認構造函數)
const string *pcs = new const string[100];
4、多維數組
用typedef簡化指向多維數組的指針:int ia[3][4];
int (*ip)[4] = ia; // 一個指向數組的指針,這個數組包括4個元素
ip = &ia[2]; // 指向的數組是從ia的最后一排數組
typedef int int_array[4]; // 包含4個元素的int數組
int_array *ipp = ia; // 等價于int (*ip)[4] = ia;
posted on 2012-08-06 21:48 tiger7 閱讀(164) 評論(0) 編輯 收藏 引用 所屬分類: C++ Primer