std::string::substr
string substr (size_t pos = 0, size_t len = npos) const;
Generate substring
Returns a newly constructed
string object with its value initialized to a copy of a substring of this object.
The substring is the portion of the object that starts at character position pos and spans len characters (or until the end of the string, whichever comes first).
Parameters
-
pos
-
Position of the first character to be copied as a substring.
If this is equal to the string length, the function returns an empty string.
If this is greater than the string length, it throws out_of_range.
Note: The first character is denoted by a value of 0 (not 1).
len
-
Number of characters to include in the substring (if the string is shorter, as many characters as possible are used).
A value of string::npos indicates all characters until the end of the string.
size_t is an unsigned integral type (the same as member type string::size_type).
Return Value
A string object with a substring of this object.Example
| |
Output:
think live in details. |
Complexity
Unspecified, but generally linear in the length of the returned object.Iterator validity
No changes.Data races
The object is accessed.Exception safety
Strong guarantee: if an exception is thrown, there are no changes in the string.If pos is greater than the string length, an out_of_range exception is thrown.
A bad_alloc exception is thrown if the function needs to allocate storage and fails.
substr(起始位置,长度)
#include<string>
#include<iostream>
using namespace std;
main()
{
string s("12345asdf");
string a=s.substr(0,4);
//获得字符串s中 从第0位开始的长度为4的字符串
cout<<a<<endl;
}
输出结果为:
1234
用处:::
1.可以用在字符串的反转中。
2.可以用在字符串的循环移位中。