- N +

cstring和string,c++獲取當(dāng)前時(shí)間

大家好,今天小編來為大家解答以下的問題,關(guān)于cstring和string,c++獲取當(dāng)前時(shí)間這個(gè)很多人還不知道,現(xiàn)在讓我們一起來看看吧!

c+沒有string*的類型嗎

C語言沒有String類型,但是C語言提供了字符串常量。C語言中字符串的概念:以NUL字節(jié)結(jié)尾的零個(gè)或多個(gè)字符,字符串通常儲(chǔ)存在字符數(shù)組中當(dāng)一個(gè)字符串常量出現(xiàn)在一個(gè)表達(dá)式中時(shí),表達(dá)式所使用的值就是這些字符所存儲(chǔ)的地址,因此可以把字符串常量賦值給一個(gè)“指向字符的指針”。

C語言中string指令是什么

stirng指令是C++里面一個(gè)用來處理字符串的類。

包含了字符串處理掉一下常用方法,如:

Constructors構(gòu)造函數(shù),用于字符串初始化

Operators操作符,用于字符串比較和賦值

append()在字符串的末尾添加文本

assign()為字符串賦新值

at()按給定索引值返回字符

begin()返回一個(gè)迭代器,指向第一個(gè)字符

c_str()將字符串以C字符數(shù)組的形式返回

capacity()返回重新分配空間前的字符容量

compare()比較兩個(gè)字符串

copy()將內(nèi)容復(fù)制為一個(gè)字符數(shù)組

data()返回內(nèi)容的字符數(shù)組形式

empty()如果字符串為空,返回真

end()返回一個(gè)迭代器,指向字符串的末尾。(最后一個(gè)字符的下一個(gè)位置)

erase()刪除字符

find()在字符串中查找字符

find_first_of()查找第一個(gè)與value中的某值相等的字符

find_first_not_of()查找第一個(gè)與value中的所有值都不相等的字符

find_last_of()查找最后一個(gè)與value中的某值相等的字符

find_last_not_of()查找最后一個(gè)與value中的所有值都不相等的字符

get_allocator()返回配置器

insert()插入字符

length()返回字符串的長度

max_size()返回字符的最大可能個(gè)數(shù)

rbegin()返回一個(gè)逆向迭代器,指向最后一個(gè)字符

rend()返回一個(gè)逆向迭代器,指向第一個(gè)元素的前一個(gè)位置

replace()替換字符

reserve()保留一定容量以容納字符串(設(shè)置capacity值)

resize()重新設(shè)置字符串的大小

rfind()查找最后一個(gè)與value相等的字符(逆向查找)

size()返回字符串中字符的數(shù)量

substr()返回某個(gè)子字符串

swap()交換兩個(gè)字符串的內(nèi)容

c怎么把char轉(zhuǎn)換為string就是字符

1、如果要將string轉(zhuǎn)換為char*,可以使用string提供的函數(shù)c_str(),或是函數(shù)data(),data除了返回字符串內(nèi)容外,不附加結(jié)束符'\0',而c_str()返回一個(gè)以‘\0’結(jié)尾的字符數(shù)組。

2、constchar*c_str();c_str()函數(shù)返回一個(gè)指向正規(guī)C字符串的指針,內(nèi)容與本string串相同.這是為了與c語言兼容,在c語言中沒有string類型,故必須通過string類對(duì)象的成員函數(shù)c_str()把string對(duì)象轉(zhuǎn)換成c中的字符串樣式.注意:一定要使用strcpy()函數(shù)等來操作方法c_str()返回的指針比如:最好不要這樣:char*c;strings="1234"

;c=s.c_str()

;//c最后指向的內(nèi)容是垃圾,因?yàn)閟對(duì)象被析構(gòu),其內(nèi)容被處理應(yīng)該這樣用:

charc[20];strings="1234";strcpy(c,s.c_str());這樣才不會(huì)出錯(cuò),c_str()返回的是一個(gè)臨時(shí)指針,不能對(duì)其進(jìn)行操作再舉個(gè)例子c_str()以char*形式傳回string內(nèi)含字符串如果一個(gè)函數(shù)要求char*參數(shù),可以使用c_str()方法:strings="HelloWorld!"

;printf("%s",s.c_str())

;//輸出"HelloWorld!"

在C++編程中,領(lǐng)導(dǎo)堅(jiān)持用char而不用string,string有那么可怕嗎

在C++中優(yōu)先使用String是一個(gè)良好的習(xí)慣。除非是C的死忠者習(xí)慣如此,否則應(yīng)該使用String而不是char。

char是用來處理任何8bit數(shù)據(jù)類型的,邏輯值、整數(shù)、字符ASCII碼等都可以。要用來處理字符串需要使用char[]數(shù)組,比較麻煩,也不好控制。

String是一個(gè)模板類,它是專門用來處理字符串的,封裝了很多處理字符串的成員函數(shù)。并且它是C++標(biāo)準(zhǔn)庫的一部分,是所有C++實(shí)現(xiàn)都支持的,也是C++創(chuàng)始人推薦使用的。

術(shù)業(yè)有專攻,應(yīng)該用哪一個(gè)不難選擇吧。

String[]arg和Stringarg[]有什么區(qū)別

Stringargs[]:傳統(tǒng)的寫法,c、c++都用該種寫法; String[]args:Java的寫法,但Java也能用上面的方法定義。 實(shí)際上String[]args是定義一字符串?dāng)?shù)組變量。 在java中,String[]args和Stringargs[]都可以定義數(shù)組。二者沒有什么區(qū)別。為規(guī)范編碼,推薦使用String[]args。另外args可以隨意改,和其它變量一樣,它只不過是一變量名,只要符合變量名規(guī)則即可。

關(guān)于cstring和string到此分享完畢,希望能幫助到您。

返回列表
上一篇:
下一篇: