應用C++的string類對象實現。為體現壹般性,對象中就允許空格出現;自定義逆序函數形參應使用引用類型,以便永久性改變對實參對象的操作。舉例代碼如下:
//#include?"stdafx.h"//If?the?vc++6.0,?with?this?line.
#include?<string>
#include?<iostream>
using?namespace?std;
void?mystrrev(string?&str){//引用形參,以改變實參
for(int?j=str.length()-1,i=0;i<j;i++,j--){
char?t=str[i];
str[i]=str[j],str[j]=t;
}
}
int?main(int?argc,char?*argv[]){
string?s;
char?ch;
cout?<<?"Input?a?string...\ns=";
while((ch=cin.get())!='\n')//輸入可有空格
s+=ch;
cout?<<?"The?original?string:?"?<<?s?<<?endl;//逆序前
mystrrev(s);//調用自定義逆序函數
cout?<<?"After?reverse?order:?"?<<?s?<<?endl;//逆序後
return?0;
}
運行結果舉例: