參考:http://www.weixueyuan.net/view/6393.html
總結:
函數substr可以提取string字符串中的子字符串,該函數有兩個參數,第一個參數為需要提取的子字符串的起始下標,第二個參數是需要提取的子字符串的長度。
“==”、 “!=”、 “<=”、 “>=”、 “<”和“>”操作符都可以用於進行string類型字符串的比較,這些操作符兩邊都可以是string字符串,也可以一邊是string字符串另一邊是字符串數組。
函數substr可以提取string字符串中的子字符串,該函數有兩個參數,第一個參數為需要提取的子字符串的起始下標,第二個參數是需要提取的子字符串的長度。
例1:
#include <iostream> #include <string> using namespace std; int main() { string s1 = "first second third"; string s2; s2 = s1.substr(6, 6); cout<< s1 <<endl; cout<< s2 <<endl; return 0; }
程序運行結果:
first second third
second
該函數同樣會出現參數越界的情況,如果第一個參數越界則函數會拋出異常。在第一個參數沒有越界的情況下,第二個參數仍然會導致越界,該函數的處理方式與前面提到的erase函數、replace函數相同,子字符串最多從第一個參數所指明的下標開始一直延續到字符串結尾。
C++字符串的比較
參考:http://www.weixueyuan.net/view/6395.html
“==”、 “!=”、 “<=”、 “>=”、 “<”和“>”操作符都可以用於進行string類型字符串的比較,這些操作符兩邊都可以是string字符串,也可以一邊是string字符串另一邊是字符串數組。
例1:
#include <iostream> #include <string> using namespace std; int main() { string s1 = "secondsecondthird"; string s2 = "secondthird"; if( s1 == s2 ) cout<< " == " <<endl; if( s1 != s2 ) cout<< " != " <<endl; if( s1 < s2 ) cout<< " < " <<endl; if( s1 > s2 ) cout<< " > " <<endl; return 0; }
程序最終運行結果:
!=
<