ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

質問者:kiy0kiy0 全角→半角変換 C UNIX
困り度:
  • すぐに回答を!
言語:C++ OS:UNIX
お世話になります。
ご存知でしたらお力をお貸しください。
今、
入力力された全角のアルファベット・数字・ひらがな・カタカナを
半角アルファベット・数字・ひらがな・カタカナに変換し
さらに、規定の記号以外は削除するプログラムを作らなくてはいけない状況です。
Cも経験が浅い為、いろいろググってみたのですが
見つかってもLCMapStringくらいで、これではC++とUNIX環境では動かなくて
非常に困っています
ご存知の方、どなたか教えていただけないでしょうか。
質問投稿日時:08/05/01 14:25
質問番号:3989827

回答

 

回答者:Tacosan 「1文字 (≠ 1バイト)」ずつチェックするだけなので, 本質的に難しいところはありません. ちょっとややこしいことを除けば「アルファベットの大文字を小文字に変換する」のと同レベルです.
while (文字が残っている) {
その文字が「全角アルファベット」→対応する「半角アルファベット」に変換
「全角数字」→対応する「半角数字」に変換
....
その他: 破棄
}
というフローになるでしょうか.
ただ, 例えば文字コードとして何を想定しているかによって変換がかわる可能性があります.
ところで「半角ひらがな」って何?
種類:アドバイス
どんな人:一般人
自信:参考意見
回答日時:08/05/01 16:31
回答番号:No.1
この回答への補足Tacosan、ありがとうございます。
アルファベットは解決したのですが
問題は全角かな、カナを半角カナに変換する所がわからないのです。

ご指摘の
【半角ひらがな】は【半角カタカナ】の間違いです

実現したいことは
【半角ひらがな・カタカナ】を【半角カナ】に変換することです
意図が伝わりづらく、申し訳ありません。
どなたかご存知でしたら教えてください。
よろしくお願いいたします。
この回答へのお礼この回答にお礼をつける(質問者のみ)