字符串的顺序反序

函数

char *strrev(char *string); 

将字符串string中的字符顺序颠倒过来. NULL结束符位置不变. 返回调整后的字符串的指针。

源码

//其基于的思想是:只是通过指针将元素的位置颠倒即可。
char *strrev(char *str)
{
assert(str != NULL);
char *st,*et;
char tmpCh;
st=et=str;
while(*et!='\0') ++et;
for(--et,st;st<et;++st,--et)
{
tmpCh=*st;
*st=*et;
*et=tmpCh;
}
return str;
}

测试

#include<iostream.h>
#include<assert.h>
void main()
{
char strings[]="abc";
strrev(strings);
cout<<strings<<endl;
}

测试结果:

bca

最新文章

  1. Android 屏幕旋转 处理 AsyncTask 和 ProgressDialog 的最佳方案
  2. highcharts 插件问题
  3. nginx 配置多个二级域名
  4. C# 语言如何获取json格式的数据,不用javascript用c#实现。。。
  5. 获取ListControl控件中(复选框)CheckBox的状态
  6. jquery1.11 操作checkbox:全选、取消全选、获取选择元素、获取取消选择元素(总结)
  7. chrome下li标签onclick事件无效
  8. PHP defined() 函数
  9. ( ! ) Parse error: syntax error, unexpected &#39;&#39; (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in D:\demo\code\yolo\index\index.php on li
  10. Tutorial: Build a Spring WebMVC App with Primefaces
  11. Backpack VI
  12. link 和@import 的区别
  13. TCP/IP通信协议
  14. 【Django】【环境配置】Mac
  15. cocos2d中的坐标系统
  16. WINDOWS 负载均衡NLB配置中单播与多播区别(转载)
  17. Linux防火墙--iptables学习
  18. shell脚本中 [-eq] [-ne] [-gt] [-lt] [ge] [le]
  19. Java字段初始化规律:
  20. AC日记——[Ahoi2009]Seq 维护序列seq bzoj 1798

热门文章

  1. Android Parcelable和Serializable的区别
  2. setsockopt()用法(参数详细说明) recv、send的超时处理
  3. 图像采集系统的Camera Link标准接口设计
  4. PL/SQL 基础知识简介
  5. dom文档对象模型图
  6. setBit testBit权限管理(shiro项目中来的二)
  7. Python 学习笔记(一)Python 简介
  8. Maven使用中央仓库下载慢的解决办法
  9. 【BZOJ1857】传送带(三分)
  10. Bounding-box 回归