|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 高山 于 2022-10-23 18:27 编辑
语法(摘自CSDN,侵删):
- substr(size_type _Off = 0,size_type _Count = npos)
复制代码 说明(摘自CSDN,侵删):
一种构造string的方法
形式 : s.substr(pos, len)
返回值: string,包含s中从pos开始的len个字符的拷贝(pos的默认值是0,len的默认值是s.size() - pos,即不加参数会默认拷贝整个s)
异常 :若pos的值超过了string的大小,则substr函数会抛出一个out_of_range异常;若pos+n的值超过了string的大小,则substr会调整n的值,只拷贝到string的末尾
实例演示(此部分原创):
代码:
- #include <bits/stdc++.h>
- using namespace std;
- int main() {
- string s="ilovefishc";
- cout<<s.substr(1,5);
- return 0;
- }
复制代码 输出:
- lovef
- --------------------------------
- Process exited after 1.157 seconds with return value 0
- 请按任意键继续. . .
复制代码 CSDN大神的实例(摘自CSDN,侵删):
代码:
- #include<iostream>
- #include<string>
- using namespace std;
- int main()
- {
- string s="sfsa";
- string a=s.substr(0,3);
- string b=s.substr();
- string c=s.substr(2,3);
- cout<<a<<endl;
- cout<<b<<endl;
- cout<<c<<endl;
- return 0;
- }
复制代码 结果:
- sfs
- sfsa
- sa
- --------------------------------
- Process exited after 1.829 seconds with return value 0
- 请按任意键继续. . .
复制代码 评析(此小部分为原创):
第7行输出了字符“sfsa”第0位到第3机器位(0即为我们的第一位)
而第8行没有写输出要求,所以被全体输出了
第9行不用说了吧
然后第10~12行输出,13行返回0
如果喜欢,别忘了评分
|
评分
-
查看全部评分
|