//倒置字符串 #include <iostream> using namespace std; //倒置原字符串 void reverse1(char * s) { if (s) { char temp; char * end=s; while (*end)//记住这里end只表示一个字符 { end++; } --end; while (s<end) { temp =*s; *s++=*end; *end-- =temp; } } } //返回个倒置字符串,不改变原字符串 char* reverse2(char * s,int m) { if(s) { char *temp =new char[m+1];//没有delete以后再看吧 //char temp[m+1]="0"; for (auto i =0;i<m;i++) { temp[i] = s[m-i-1]; } temp[m] ='\0'; return temp; } return s; } //倒着显示字符串 //递归 void show(char *s) { char temp; if(*s) { temp =*s++; show(s); cout<<temp; } } //不递归 用栈做 原理一样 void main() { char s[11] ="1234567890"; show(s); cout<<endl<<s<<endl; char *s1 =reverse2(s,strlen(s)); for (auto i =0;i<10;i++) { cout<<*s1++; } cout<<endl; reverse1(s); cout<<s<<endl; system("pause"); }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。