一个字符串反转函数
2009-03-31 15:10
162 查看
#include <stdio.h> #include <string.h> void reverse_str(char * ch); void reverse_str2(char *ch); int main(void) { char c[] = "Can you reverse me?"; printf("original string c: /n%s/n", c); reverse_str(c); printf("reversed string after calling reverse_str: /n%s/n", c); reverse_str2(c); printf("reversed string after calling reverse_str2: /n%s/n", c); system("pause"); return 0; } void reverse_str(char *ch) /*使用中间变量*/ { int len; int i; len = strlen(ch)-1; char ctemp; for(i = 0; i < len-i; i++) { ctemp = ch[i]; ch[i] = ch[len-i]; ch[len-i] = ctemp; } ch[len+1] = 0; } void reverse_str2(char *ch) /*不用中间变量*/ { int len; int i; len = strlen(ch)-1; char ctemp; for(i = 0; i < len-i; i++) { ch[i] = ch[i] ^ ch[len-i]; ch[len-i] = ch[i] ^ ch[len-i]; ch[i] = ch[i] ^ ch[len-i]; } ch[len+1] = 0; }
虽然短短几行,但很值得研究。
相关文章推荐
- 写一个字符串反转函数,输入 abcdef 转换成 edcba
- 将一个字符串逆序,不要使用反转函数(面试题)
- 写一个字符串反转函数,实现字符串倒序。
- 【面试经典题之字符串】用C或C++写一个函数,实现反转一个null结尾的字符串
- CI1.2 用c或c++实现void reverse(char* str)函数,即反转一个null结尾的字符串
- 要求:不申请变量和空间 反转字符串 ,用一个函数实现。 异或^交换或者加减交换的典型应用! VIA 笔试题
- 要求:不申请变量和空间反转字符串,用一个函数实现。VIA笔试题
- 一个字符串反转函数可实现字符串倒序
- 今天刚学了一个字符串反转函数
- 分享一个PHP 字符串反转函数 支持中文 英文
- 算法题 用C或C++实现void reverse(char* str)函数,即反转一个null结尾的字符串
- 【C++】用C或C++实现void reverse(char* str)函数,即反转一个null结尾的字符串
- 一个字符串反转函数可实现字符串倒序
- Java面试题从零开始:写一个函数把字符串反转
- 用C++实现void reverse(char* str)函数,即反转一个null结尾的字符串.
- 在网上看到了一个面试题感觉很有意思 写一个函数,实现字符串反转
- 将一个字符串逆序,不要使用反转函数
- DIY一个字符串反转函数
- 提供任意字符串,请构造一个函数能够查找字符串中出现最多的次数和个数
- 在delphi中Val是一个将字符串转换为数字的函数