二維字元陣列按長度排序 字串長度 字元陣列長度

2021-10-18 02:00:11 字數 1893 閱讀 3317

1、不帶轉義字元的字元
如:「abc!x=/」,其長度為 7

2、帶轉義字元的字串
(1) 字串「abcn」:其中的'n'為轉義字元(換行符),計算字串長度時只能計作乙個字元,所以該字串的長度為4(而

不是5)。

(2) 字串「abcn'"":其中有4個轉義字元:'n'(換行符)、''(反斜槓)、'''(單引號)、'"'(雙引號),所以該字串的長度為7(而不是11)。

(3) 字串「abc0xyz」:其中有乙個轉義字元'0',它是字串結束符,所以,當用函式strlen來測試該字串的長度時,結果應該為3(而不是7)。

(4) 字串「abc0xy」:其中有乙個轉義字元''(反斜槓),這樣,後面的字串「0xy」照樣計算,所以,該字串的長度為7(而不是將第二個反斜槓與其後的0結合為乙個轉義字元'0',若那樣的話,第乙個反斜槓將無法處理,因為乙個轉義字元總是由反斜槓加其他字元組成的,單獨的乙個反斜槓不能作為任何合法的字元)。

(5) 若將字串「abc0xy」改為「abc0xy」:則其中有二個轉義字元''(反斜槓)和'0'(字串結束符),這時,當用函式strlen來測試該字串的長度時,結果應該為4(而不是7)。

(6) 若將字串「abc0xy」改為「abc061xy」:則其中有二個轉義字元''(反斜槓)和'061'(ascii碼值等於061的字元,也即數字字元'1'),'x12'(1和2為兩個16進製制數,同上),這時,當用函式strlen來測試該字串的長度時,結果應該為7(而不是4或9)。所以,當遇到轉義字元'0'時,還要看其後面是否還有數字,若有,則應將後面的數字(一至二位)與前面的'0'相結合作為乙個字元計入整個字串的長度。若用printf(「abc061xy」);輸出,則輸出結果為:abc1xy

strlen返回字元陣列的長度,包括空格。
#include#includeusing namespace std;

int main()

{ const char* p = "hell o"; //因為"hell o"是常量型的,所以要加const

cout結果:

cout結果:

#include#includeusing namespace std;

int main()

{ string p = "hell o";

cout結果:

cout結果:

cout結果:

二維陣列 字元陣列與字串

要求 了解多維陣列的概念 掌握二維陣列的使用 掌握用字元陣列存放字串的方法 掌握字串的輸入及輸出方法 二維陣列的定義 例 int a 2 3 定義乙個二維陣列 該陣列有2行3列共6個元素 這6個元素都存放int型資料 儲存時先儲存第一行的3個元素,然後再儲存第二行的3個元素 可將此二維陣列看成是乙個...

C 按字串長度排序

按字串長度排序可以分為以下三個步驟 讀取所有輸入行 對文字進行排序 按次序列印文字行 如下 include include include define maxlen 1000 char alloc int int getline char p,int n 讀取一行字元 int readline c...

二維陣列 字串 API

1 二維陣列 陣列中的元素,又指向乙個新的子陣列 何時使用 1.儲存橫行豎列的資料時 2.分組儲存上下級包含關係時 如何建立 1.先建立空陣列,再初始化元素為子陣列 var data data 0 0,0,0,0 data 1 0,0,0,0 何時使用 不確定子陣列的個數或內容時 2.建立時就初始化...