動態陣列
std::vector 類
標頭檔案 < vector >
另:deque類,標頭檔案< deque>,與vector類似,不同的時可以使用push_front()和pop_front()操作在開頭增加或者減少元素
字串可以使用c風格的字串處理函式,但是經常因為終止空字元有坑
使用std::string 動態儲存字串
標頭檔案 < string >
//常量字串初始化
const
char
* constcstylestring =
"hello string!"
;std::string strfromconst (constcstylestring)
;//或
std::string str2 (
"hello string!");
//用前幾個字元初始化
std::string str3
(constcstylestring,5)
;//用特定字元初始化
std::string str4(10
,'a');
//直接賦值
std::string strfromconst = constcstylestring;
[ ]
迭代器另:c_str() 可以獲得string物件
+=
//返回值為位置(第一次出現)
size_t charpos = samplestr.find (
"day",0
);//返回值與string::npos(實際值是-1)比較
//在給定偏移位置和字元數時刪除指定數目的字元。
string samplestr (
"hello string! wake up to a beautiful day!");
samplestr.erase (13,
28);//iterator points to a specific character
string::iterator ichars = find (samplestr.begin (
),samplestr.end (),
's')
;samplestr.erase (ichars)
;//在給定由兩個迭代器指定的範圍時刪除該範圍內的字元。
samplestr.erase (samplestr.begin (
), samplestr.end ())
;
標頭檔案 < algorithm >
string samplestr (
"hello string! we will reverse you!");
reverse (samplestr.begin (
), samplestr.end ())
;
-大小寫轉換std:: transform
transform
(instr.
begin()
, instr.
end(
), instr.
begin()
,::tolower)
;transform
(instr.
begin()
, instr.
end(
), instr.
begin()
,::toupper)
;
有一點迷惑,看一下原型
template
<
class
inputiterator
,class
outputiterator
,class
unaryoperation
>
outputiterator transform (inputiterator first1, inputiterator last1,outputiterator result, unaryoperation op)
;//result為存放結果的起始位址
如果編寫的字串中含有非拉丁字元,如中文,需要使用std::wstring
c++14 引入 「 」s(雙引號中間是字串),能夠操作帶有空字元』\0』的字元緩衝區
python基礎知識之字串
凡是用引號 包括單引號 雙引號 三引號引起來的都是字串,其中單引號和雙引號沒有任何區別,可巢狀使用,多因好用於建立多行字串,並且可賦值給變數 a abcdefghijklmn print a 2 字串的索引從0開始,所以輸出cprint a 0 3 可以進行切片操作,就是通過索引 開始位置 結束位置...
Python基礎知識之字串
字串 1 字串拼接辦法 1 用 拼接 aaa sbbb f 2 用join 方法拼接 a d f g join a dfg a a b c 必須是字串 b.join a a b c dir usr local bin join dir usr local bin 3 用format 方法拼接 tr ...
指標與字串 基礎知識
一 char型別的長度為1,而字串字面量的長度為4 printf d n sizeof char 1 printf d n sizeof a 4 二 字串字面量看作常量,無法修改字串。includeint main 上面程式執行報錯。為了自己好,不要去修改字串常量值,不然你是在給自己找麻煩。三 字串...