c – 如何反转std :: string?

前端之家收集整理的这篇文章主要介绍了c – 如何反转std :: string?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > How do you reverse a string in place in C or C++?26
我试图弄清楚当我以二进制数字读取字符串时如何反转字符串temp
  1. istream& operator >>(istream& dat1d,binary& b1)
  2. {
  3. string temp;
  4.  
  5. dat1d >> temp;
  6. }

解决方法

@H_403_8@ 我不知道包含二进制数的字符串的含义.但是,为了反转字符串(或任何与STL兼容的容器),您可以使用std :: reverse(). std :: reverse()运行到位,所以你可能想要首先创建一个字符串的副本:
  1. #include <algorithm>
  2. #include <iostream>
  3. #include <string>
  4.  
  5. int main()
  6. {
  7. std::string foo("foo");
  8. std::string copy(foo);
  9. std::cout << foo << '\n' << copy << '\n';
  10.  
  11. std::reverse(copy.begin(),copy.end());
  12. std::cout << foo << '\n' << copy << '\n';
  13. }

猜你在找的C&C++相关文章