c字符串逆序
2014-05-08 17:30
267 查看
这个其实不是原创的了,只是自己写了一遍而已。第一种是普通逆序,第二种是原地逆序。
char* Reverse(char* s) { //将q指向字符串最后一个字符 char* q = s ; while( *q++ ) ; q -= 2 ; //分配空间,存储逆序后的字符串。 char* p = malloc(sizeof(char) * (q - s + 2)); char* r = p ; // 逆序存储 while(q >= s) *p++ = *q-- ; *p = '\0' ; return r ; }
char* InPlaceReverse(char* s){ char *left = s; char *right = s; while (*right++) ; right -= 2; while (right >= left) { char var = *left; *left++ = *right; *right-- = var; } return s; }
相关文章推荐
- C4.5算法的分析和实现
- 新的开始
- 常用判断
- virtual 修饰符与继承对析构函数的影响(C++)
- jQ confirm确认对话框
- 2014省赛大总结(一) DFS 与 BFS
- 自定义控件:SlidingUpPanelLayout
- i386 错误
- fstream,ifstream,ofstream 详解与用法
- N皇后问题(hdu2553)
- TI C66x DSP 系统events及其应用 - 4.3(Exception handle)
- ios 沙盒 NSCoding 归档 数据存储
- java环境变量配置(windows7)
- 从K近邻算法、距离度量谈到KD树、SIFT+BBF算法
- Eclipse调试Java的10个技巧
- 输出两字符串最大相同部分——C面试题
- 针对list集合排序
- Android Compatibility package 兼容性开发套件
- 深入理解Javascript闭包概念
- WebBrowser嵌入对话框中,回车键不响应