1.自己编写函数,不调用库函数

首先当然是自己写函数实现啦,不调用库函数来反转

#include <iostream>
#include <string>
using namespace std;
void reverse(string& s ,int n){char c;for(int i=0,j=n-1;i<j;i++,j--){c=s[i];s[i]=s[j];s[j]=c;}
}
int main(){string str;getline(cin,str);reverse(str,str.length());cout<<str<<endl;
}

2.调用algorithm模块中的reverse函数

学习stl非常重要,学习C++的必备,侯俊杰老师的《STL源码剖析》可以看看!!!

这里借助的是stl里面的algorithm模块,实现对容器的反转函数reverse(iterator * begin, iterator *end),直接作用于容器。

#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main(){string s;getline(cin,s);reverse(s.begin(),s.end());cout<<s<<endl;return 0;
}

3.调用strrev()函数

注意strrev()函数只是对字符数组有效,但是对string无效

#include <iostream>
#include <string.h>
using namespace std;
int main()
{char s[]="hello";strrev(s);cout<<s<<endl;return 0;
}

据说该函数位于string.h文件,但是我的ubuntu下gcc编译器说没有它。

详细看Stack Overflow的解说,有人说已经没有该函数了。链接:https://stackoverflow.com/questions/8534274/is-the-strrev-function-not-available-in-linux

--------------------------------------------------------------后续有新方法会继续更新

三种方法reverse字符串相关推荐

  1. Java中用三种方法输出字符串_java中两个字符串连接的三种方法

    java中两个字符串连接有以下三种方法: 第一种方法:使用+: 第二种方法:使用concat(): 第三种方法:使用append(): 如下代码: public class Practice { // ...

  2. java持久层用文件_JAVA中用三种方法将字符串持久化到文件中

    经常需要将数据进行持久化,而我们的文件系统是最古老也是最可靠的保存方式.这里就给出一个在JAVA中把字符串保存到文件中的例子.如下: package test.base; import java.io ...

  3. 三种方法求字符串长度

    在求字符串长度时,第一时间会想到运用strlen这个函数,但对于初学者来说,除了掌握这个函数之外,还应当自己写函数来实现相似的功能. 接下来我列举了三种方法来求字符串长度,供大家参考: (1)运用st ...

  4. java三种方法拆分字符串

    字符串分割有三种方法,如下: 1.用split()方法进行分割,分割开的子字符串放入数组,然后进行处理. 示例代码如下: public class SplitTest { public static ...

  5. js 把字符串转成json对象的三种方法

    js 把字符串转成json对象的三种方法 不管字符串是否含有转义字符,都能转换成 Json 对象 1, js自带的eval函数,其中需要添加小括号eval('('+str+')'); function ...

  6. pca算法python代码_三种方法实现PCA算法(Python)

    主成分分析,即Principal Component Analysis(PCA),是多元统计中的重要内容,也广泛应用于机器学习和其它领域.它的主要作用是对高维数据进行降维.PCA把原先的n个特征用数目 ...

  7. 在JavaScript中重复字符串的三种方法

    In this article, I'll explain how to solve freeCodeCamp's "Repeat a string repeat a string" ...

  8. 在JavaScript中反转字符串的三种方法

    This article is based on Free Code Camp Basic Algorithm Scripting "Reverse a String" 本文基于F ...

  9. java字符串abc反转_JAVA字符串反转的三种方法

    方法一:使用StringBuilder import java.util.Scanner; public class StrReversal { public static void main(Str ...

最新文章

  1. 特殊的Windows消息
  2. JavaScript 字典类
  3. BZOJ 1529: [POI2005]ska Piggy banks( 并查集 )
  4. 争议“云游戏”:一个几十亿规模的颠覆者?一场徐虎飘渺的幻梦
  5. JavaScript学习_第2章_JS语法规则
  6. c语言200行代码大作业含菜单,2018级C语言大作业 - 坦克动荡
  7. 软件、硬件版本号命名规范
  8. python爬虫框架scrapy案例分析
  9. vue 一个公式 编辑器 组件
  10. Coding and Paper Letter(二十二)
  11. 水果店圈子:水果店怎么入门,水果店工作注意什么
  12. 模具设计:模具做的好,镶件也要镶得好!
  13. 深度学习经典论文汇总
  14. WK型振弦式应变计混凝土变形监测
  15. 新唐单片机移植RT-Thread,Finsh组件的接口函数编写
  16. 革命性新疗法后 第三例艾滋病治愈病例可能出现了!
  17. Linux之常见的通配符
  18. 2019数据安装勾选_天正T20V5.0建筑安装包免费下载附安装教程
  19. java截取前几位_java中怎么截取字符串前几位
  20. Android9 通过拨号键盘暗码打开app

热门文章

  1. 生产者消费者算法的简单实现
  2. linq 连接mysql_使用LINQ访问数据库
  3. 初二计算机会考意义,初二生地会考成绩到底有多重要?
  4. DM数据库中dexp和dimp常见业务使用场景
  5. js 上一步 下一步 操作
  6. 花生壳 || FRP实现玩客云、树莓派...内网穿透,外网访问
  7. np.flatnonzero()使用
  8. HacksudoAliens
  9. “年终盘点一对一”之前端架构师
  10. php require的用法,php引入外部文件require和include的用法