如何string从右边开始截取5位。

科比布莱恩特 2011-10-20 05:50:50
string从右边开始截取5位。
...全文
1676 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
haofang666777 2011-10-20
  • 打赏
  • 举报
回复
呵呵,不过谢谢提醒,
会注意的。
[Quote=引用 15 楼 mymixing 的回复:]
引用 14 楼 haofang666777 的回复:

呵呵,我是该好好学习了,以前学累了会进来
看来误人子弟了
那我再好好学吧,
半年内不会再进来(当然问题除外)

我去。。这算哪门子误人子弟。。
我不过就是说一下,印象里看到有几个贴里,有些回答不是很对而已。
呵呵,我也不是权威,说不定还是我说错了呢。
别太当回事了,对编程这东西有了自己的理解,比别人说的东西强百倍。
[/Quote]
Enter空格 2011-10-20
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 haofang666777 的回复:]

呵呵,我是该好好学习了,以前学累了会进来
看来误人子弟了
那我再好好学吧,
半年内不会再进来(当然问题除外)
[/Quote]
我去。。这算哪门子误人子弟。。
我不过就是说一下,印象里看到有几个贴里,有些回答不是很对而已。
呵呵,我也不是权威,说不定还是我说错了呢。
别太当回事了,对编程这东西有了自己的理解,比别人说的东西强百倍。
haofang666777 2011-10-20
  • 打赏
  • 举报
回复
呵呵,我是该好好学习了,以前学累了会进来
看来误人子弟了
那我再好好学吧,
半年内不会再进来(当然问题除外)[Quote=引用 13 楼 mymixing 的回复:]
引用 9 楼 haofang666777 的回复:

我是该潜下心好好学一下了,谢谢提醒
但是我这种方法没错
只是漏了一()
string b(a,a.size()-5);
不信你可以查一下,是否有这种构造方式,
从字符串a第a.size()-5个字符开始赋值;


呵,这个是属于笔误;
但是不同版本VC系列编译器对string类型的实现是不一样的。
你那个代码把笔误去掉,……
[/Quote]
Enter空格 2011-10-20
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 haofang666777 的回复:]

我是该潜下心好好学一下了,谢谢提醒
但是我这种方法没错
只是漏了一()
string b(a,a.size()-5);
不信你可以查一下,是否有这种构造方式,
从字符串a第a.size()-5个字符开始赋值;
[/Quote]

呵,这个是属于笔误;
但是不同版本VC系列编译器对string类型的实现是不一样的。
你那个代码把笔误去掉,用不同版本的编译器会出现不同的结果。
lirunfa 2011-10-20
  • 打赏
  • 举报
回复
用substr就可以满足啦 建议楼主去查看string的一些方法
喧嚣天空 2011-10-20
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 gsygsygsyd 的回复:]
string a=“qweqwewqe”;
a<<32;
cout<<a;
[/Quote]
错了。。。a不支持移位运算。
喧嚣天空 2011-10-20
  • 打赏
  • 举报
回复
string a=“qweqwewqe”;
a<<32;
cout<<a;
haofang666777 2011-10-20
  • 打赏
  • 举报
回复
我是该潜下心好好学一下了,谢谢提醒
但是我这种方法没错
只是漏了一()
string b(a,a.size()-5);
不信你可以查一下,是否有这种构造方式,
从字符串a第a.size()-5个字符开始赋值;
[Quote=引用 7 楼 mymixing 的回复:]
引用 6 楼 haofang666777 的回复:
string a="sdfhdghf";
string b(a,a.size-5);


哥们,看到你好多错误的回复了。。。
[/Quote]
pathuang68 2011-10-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wangliangffaflgh 的回复:]

C/C++ code

#include <string>
#include <iostream>
using namespace std;

int main(void)
{
string s = "abcdefghijklmn";

cout << s.substr(s.length()-5) << endl;
return 0;
}
[/Quote]

这个不错:)
Enter空格 2011-10-20
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 haofang666777 的回复:]
string a="sdfhdghf";
string b(a,a.size-5);
[/Quote]

哥们,看到你好多错误的回复了。。。
haofang666777 2011-10-20
  • 打赏
  • 举报
回复
string a="sdfhdghf";
string b(a,a.size-5);
turing-complete 2011-10-20
  • 打赏
  • 举报
回复
#include <string>
#include <iostream>

using std::cout;
using std::string;
using std::endl;

string rsubstr(const string &src_str, const size_t len)
{
const size_t size(src_str.length());
if (len >= size)
{
return src_str;
}
else
{
return src_str.substr(size - len, len);
}
}

int main(void)
{
string s = "abcedfagfdk;xmxc;i";
cout << rsubstr(s, -1) << endl;
return 0;
}
always_littlesun 2011-10-20
  • 打赏
  • 举报
回复
string a="HelloWorld!";
int n=a.length();
string b=a.substr(n-5,5);
---------------------------
b就是要你的字符串啦~
测试NULL 2011-10-20
  • 打赏
  • 举报
回复
或者这样也行:


#include <string>
#include <iostream>
using namespace std;

int main(void)
{
string s = "abcdefghijklmn";

cout << s.substr(s.length()-5, s.length()) << endl;
return 0;
}
测试NULL 2011-10-20
  • 打赏
  • 举报
回复

#include <string>
#include <iostream>
using namespace std;

int main(void)
{
string s = "abcdefghijklmn";

cout << s.substr(s.length()-5) << endl;
return 0;
}

64,646

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧