特殊的字元陣列

2021-09-08 09:44:22 字數 1519 閱讀 7261

字元陣列

既可以用一組花括號括起來、逗號隔開的字元字面值隔開的字面值進行初始化:

char ca1 = ;

也可以用字串字面值進行初始化:

char ca2 = "123";

兩者區別

字串字面值包含乙個額外的空字元(null)(這是為了相容c語言,c++中所有字串字面值都由編譯器自動在末尾新增乙個空字元)。

案例

#include #include 

using

namespace

std;

intmain()

;

char c = "

abc"

; cout

<< sizeof(a) / sizeof(char) <

cout

<< sizeof(c) / sizeof(char) <

string

s1(a);

cout

<< "

s1.size():

"<< s1.size() <

string

s2(c);

cout

<< "

s2.size():

"<< s2.size() <

}

結果

注意

在初始化字串的新物件時,比如string s(cp), 如果cp字元陣列名,那麼該陣列必須是以null結束的(當然如果是以字串字面值賦值的話會自動加上),只有這樣才能正確初始化。上例中如果a = 結果s1.size()將不是3,例如

#include #include 

using

namespace

std;

intmain()

;

char c = "

abc"

; cout

<< sizeof(a) / sizeof(char) <

cout

<< sizeof(c) / sizeof(char) <

string

s1(a);

cout

<< "

s1.size():

"<< s1.size() <

string

s2(c);

cout

<< "

s2.size():

"<< s2.size() <

}

結果

shell的特殊字元

點 命令 點 命令是乙個shell內部命令,它可以使使用者在當前的shell中執行程式,而不建立子程序。注釋 shell指令碼的注釋符號 重定向符 用法 command filename,可以將command的輸出儲存在filename檔案中。同 類似,但表示追加。用法 command filena...

特殊字元的分隔

特殊字元的分隔 system.out.println 方法一 string aa sss ccc string vv aa.split system.out.println 以 分隔的陣列長度 vv.length system.out.println 方法二 string bb aaaa cccc ...

特殊的空格字元

特殊的空格字元 author 大風 在asp程式設計中,我們常常使用trim rtrim ltrim 函式去掉一些資料的開頭和結尾的空格,筆者最近寫了乙個asp聊天室,有下面的一段 dim name,title name trim request.form name password trim re...