stringで日本語の文章を入力し、それを逆にして返すというプログラムが書きたかったのですがうまくいきません
入力が「日本語の文章」なら出力は「章文の語本日」としたいです。
#include<iostream>
#include<string>
using namespace std;
int main(){
string str;
while(1){
cin >> str;
if(str=="END") return 0;
do{
cout << str.substr(str.size()-1);
str.erase(str.size()-1);
}while(!str.empty());
cout <<endl;
}
}
たとえば
C言語→鼬セ靴
あいうえお→ィえういあ
漢字とひらがなを使う→、H酒ながらひとz質
といった具合です。
試しにひっくり返さずにそのまま出力する命令を前に入れたところ文字化けは起こりませんでした
確か日本語は英語より使ってる領域が多かった覚えがあり、それが関係しているのだろうと予測しています。
日本語でこの機能を満たすことは可能でしょうか?