C 2 關於string字串的大小寫轉換

2021-08-21 07:46:23 字數 922 閱讀 6896

如何將乙個string中的字元全部轉換成大寫或者全部轉換成小寫?c++標準目前並沒有直接提供這種方法,但是我們可以通過stl的transform演算法配合的toupper和tolower來實現該功能。

stl的algorithm庫確實給我們提供了這樣的便利,開發人員只需要提供乙個函式物件,即可實現大小寫轉換。

transform原型:

template < class inputiterator, class outputiterator, class unaryoperator >

outputiterator transform ( inputiterator first1, inputiterator last1,

outputiterator result, unaryoperator op );

template < class inputiterator1, class inputiterator2,

class outputiterator, class binaryoperator >

outputiterator transform ( inputiterator1 first1, inputiterator1 last1,

inputiterator2 first2, outputiterator result,

binaryoperator binary_op );

測試**:

#include #include #include #include #include using namespace std;

int main()

執行結果:

hello world!

hello world!

趕緊去試一試吧。

參考文章:

關於字串String

通過string類的實現原始碼可以獲知,string類是final類,通過byte陣列儲存字串。檢視substring concat和replace方法,發現都不是在原字串上進行操作,而是重新生成了乙個新字串物件,也就是操作完成後,最開始的字串並沒有被改變。記住 對string物件的任何改變都不影響...

關於字串 String

本文主要記錄一些字串中的方法 contact 將兩個或多個字元的文字組合起來,返回乙個新的字串 var a hello var b world var c a.contact b hello,world indexof 返回字串中乙個子串第一處出現的索引 從左到右搜素 如果沒有匹配項,返回 1 va...

關於字串 string類

1 字串 字串是儲存在記憶體的連續位元組中的一系列字元。儲存在連續位元組中的一系列字元意味著可以將字串儲存在char陣列中,其中每個字元都位於自己的陣列元素中。什麼時候char陣列是string型別?char dog 8 not a string char cat 8 a string 只有第二個陣...