cで小文字を大文字に大文字を小文字に変換する方法

cで小文字を大文字に、大文字を小文字に変換する方法を書きます。

小文字を大文字に変換する方法

小文字を大文字に変換するには、対象の文字から32を引きます。
なぜかというと、文字の割り当てのがちょうどそうなっているからです。

大文字を小文字に変換する方法

大文字を小文字に変換するには、対象の文字から32を足します

大文字から小文字という並び順になっていることに注意してください。

対象の文字列が大文字なら小文字に小文字なら大文字に変換するプログラム例

では、小文字に大文字に、大文字なら小文字にする例をc++で書きます。

int main(void){
    string str = "abcdEFG";
    for(int i = 0;i < str.length();++i){
        char c = str.at(i);
        if(c >= 'a' && c <= 'z'){
            str.at(i) = c - 32;
        }else if(c >= 'A' && c <= 'Z'){
            str.at(i) = c + 32;
        }
    }
    cout << str << endl;
    return 0;
}

出力:ABCDefg

カテゴリー: c++

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です