要顯示中文必須使用unsigned char型,如果使用char 就裝不下了。
然後要明白乙個unsigned char 其實只是裝了乙個中文字元的一半。列印的時候如果只列印乙個unsigned char有可能什麼都看不到。所以逆轉的時候要把兩個unsigned char看成乙個整體來交換。**如下:
#include
<
iostream
>
using
namespace
std;
intmain(
void
) p=
p-2;
while
(p>
b)cout
<<
string1;
return0;
} 其中的while(*p)p-=2;也可以用p = &string1[strlen(string1)-2]代替。。
char
*reverse(
const
char
*str)
...else
if(i
<
size)
*temp ='
/0';
return
newstr;
} 同時發現乙個csdn插入**的bug。當插入**中出現『/0』的時候就會截斷。所以我只能用'//0'代替了。
當字串中有dbcs雙位元組字元時,使用同時轉換兩個。當有sbcs單位元組字串時轉換乙個。
(但是有些dbcs字元是占用兩個以上空間的。但是沒有考慮)這只是個簡單的轉換。
中文字串逆轉輸出
中文字元儲存單位為兩個位元組。程式如下 include include include include using namespace std define num 16 8 9 0 1 void change char arr,int n int number 0 int j 0 for int ...
字串逆轉
題意 輸入乙個字串,逆向輸出該串。sample input 3frankly,i don t think we ll make much money out of this scheme.madam i m adam sample output hcum ekam ll ew kniht t nod...
字串逆轉問題
問題描述 長度為n的字串,在第 i 的位置處向左旋轉或者向右旋轉。比如字串abcdefgh 長度n為8 若將該字串在i 3的位置處,向左旋轉則得到字串defghabc 問題要求 時間複雜度要和n成正比,記憶體幾十位元組。問題解決方法 數學基礎 即將矩陣 ab 變為ba ab a b a b a b ...