substr()函數的用法

substr()函數定義於頭文件 <string>

 

一、參數:(pos, n)

pos - 從此位置開始拷貝

n - 拷貝 n 長度的字符串

 

二、形式:

s.substr(pos, n)

 

三、解釋:

返回一個string,包含s中從pos開始的n個字符的拷貝。

 

#include<iostream>#include<string>using namespace std;int main(){  string s="123abc";  string a=s.substr(2,2);//從下標爲2的位置開始,拷貝兩個字符返回。  cout<<a;  return 0;}

程序運行結果:  3a

 

四、說明:

1.參數pos的默認值是0,n的默認值是s.size() - pos。

①不加參數會拷貝整個s。

#include<iostream>#include<string>using namespace std;int main(){  string s="123abc";  string a=s.substr();//不加參數會拷貝整個s  cout<<a;  return 0;}

程序運行結果:  123abc

 

②只加參數pos,會從pos位置開始拷貝剩餘全部字符。

#include<iostream>#include<string>using namespace std;int main(){  string s="123abc";  string a=s.substr(3);//從下標爲3的位置開始,拷貝剩餘全部字符返回。  cout<<a;  return 0;}

程序運行結果:  abc

 

2.若pos的值超過了string的大小,則substr函數會拋出一個out_of_range異常;若pos+n的值超過了string的大小,則substr會調整n的值,只拷貝到string的末尾。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章