三种方法reverse字符串
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字符串相关推荐
- Java中用三种方法输出字符串_java中两个字符串连接的三种方法
java中两个字符串连接有以下三种方法: 第一种方法:使用+: 第二种方法:使用concat(): 第三种方法:使用append(): 如下代码: public class Practice { // ...
- java持久层用文件_JAVA中用三种方法将字符串持久化到文件中
经常需要将数据进行持久化,而我们的文件系统是最古老也是最可靠的保存方式.这里就给出一个在JAVA中把字符串保存到文件中的例子.如下: package test.base; import java.io ...
- 三种方法求字符串长度
在求字符串长度时,第一时间会想到运用strlen这个函数,但对于初学者来说,除了掌握这个函数之外,还应当自己写函数来实现相似的功能. 接下来我列举了三种方法来求字符串长度,供大家参考: (1)运用st ...
- java三种方法拆分字符串
字符串分割有三种方法,如下: 1.用split()方法进行分割,分割开的子字符串放入数组,然后进行处理. 示例代码如下: public class SplitTest { public static ...
- js 把字符串转成json对象的三种方法
js 把字符串转成json对象的三种方法 不管字符串是否含有转义字符,都能转换成 Json 对象 1, js自带的eval函数,其中需要添加小括号eval('('+str+')'); function ...
- pca算法python代码_三种方法实现PCA算法(Python)
主成分分析,即Principal Component Analysis(PCA),是多元统计中的重要内容,也广泛应用于机器学习和其它领域.它的主要作用是对高维数据进行降维.PCA把原先的n个特征用数目 ...
- 在JavaScript中重复字符串的三种方法
In this article, I'll explain how to solve freeCodeCamp's "Repeat a string repeat a string" ...
- 在JavaScript中反转字符串的三种方法
This article is based on Free Code Camp Basic Algorithm Scripting "Reverse a String" 本文基于F ...
- java字符串abc反转_JAVA字符串反转的三种方法
方法一:使用StringBuilder import java.util.Scanner; public class StrReversal { public static void main(Str ...
最新文章
- 特殊的Windows消息
- JavaScript 字典类
- BZOJ 1529: [POI2005]ska Piggy banks( 并查集 )
- 争议“云游戏”:一个几十亿规模的颠覆者?一场徐虎飘渺的幻梦
- JavaScript学习_第2章_JS语法规则
- c语言200行代码大作业含菜单,2018级C语言大作业 - 坦克动荡
- 软件、硬件版本号命名规范
- python爬虫框架scrapy案例分析
- vue 一个公式 编辑器 组件
- Coding and Paper Letter(二十二)
- 水果店圈子:水果店怎么入门,水果店工作注意什么
- 模具设计:模具做的好,镶件也要镶得好!
- 深度学习经典论文汇总
- WK型振弦式应变计混凝土变形监测
- 新唐单片机移植RT-Thread,Finsh组件的接口函数编写
- 革命性新疗法后 第三例艾滋病治愈病例可能出现了!
- Linux之常见的通配符
- 2019数据安装勾选_天正T20V5.0建筑安装包免费下载附安装教程
- java截取前几位_java中怎么截取字符串前几位
- Android9 通过拨号键盘暗码打开app
热门文章
- 生产者消费者算法的简单实现
- linq 连接mysql_使用LINQ访问数据库
- 初二计算机会考意义,初二生地会考成绩到底有多重要?
- DM数据库中dexp和dimp常见业务使用场景
- js 上一步 下一步 操作
- 花生壳 || FRP实现玩客云、树莓派...内网穿透,外网访问
- np.flatnonzero()使用
- HacksudoAliens
- “年终盘点一对一”之前端架构师
- php require的用法,php引入外部文件require和include的用法