ウェブサイト検索

C++の文字列を大文字と小文字にする


この記事では、C++における入力文字列の小文字および大文字への変換について詳しく説明します。C++のStringクラスは、入力文字列に対して操作を実行するための多数の組み込み関数を提供しています。

C++の文字列を大文字にする

C++の文字列には、入力文字列を大文字に変換するための組み込みのtoupper()関数があります。

構文:

toupper(input_string)

例:

#include <iostream>
#include <cstring>


using namespace std;

int main()
{
    char arr[] = "Engineering Discipline.";

    cout << "Original String:\n"<< arr<< endl;
    cout<<"String in UPPERCASE:\n";
    for (int x=0; x<strlen(arr); x++)
        putchar(toupper(arr[x]));
    
    return 0;
}

上記のコードスニペットでは、cstringパッケージに文字列関連の関数が含まれています。さらに、strlen()関数は入力文字列の長さを計算するために使用されます。

putchar() メソッドはデータを画面/コンソールに表示するために使用されます。

出力:

Original String:
Engineering Discipline.
String in UPPERCASE:
ENGINEERING DISCIPLINE.

入力された文字を大文字に変換する

入力文字のASCII値を考慮して、文字列を大文字/小文字に変換することもできます。

小文字のアルファベット(a-z)のASCII値:97 - 122

大文字アルファベット(A-Z)のASCII値:65 - 92

例:

#include <iostream>
using namespace std;

int main()
{
   char X;
   cout<<"Enter a character:"; 
   cin>>X;
   X=X-32;
   cout<<"Converted character to UPPERCASE:";
   cout<<X;
   return 0;
}

上記の通り、小文字と大文字のアルファベットのASCII値の範囲の間には、32、すなわち97-65の違いがあります。

したがって、入力を大文字に変換するためには、入力文字のASCII値から32を引く必要があります。

出力:

Enter a character:f
Converted character to UPPERCASE:F

C++の文字列を小文字にする

C++の文字列には、入力文字列を小文字に変換するための組み込みのtolower()関数があります。

構文:

tolower(input)

例:

#include <iostream>
#include <cstring>


using namespace std;

int main()
{
    char arr[] = "Engineering Discipline.";

    cout << "Original String:\n"<< arr<< endl;
    cout<<"String in lowercase:\n";
    for (int x=0; x<strlen(arr); x++)
        putchar(tolower(arr[x]));
    
    return 0;
}

出力:

Original String:
Engineering Discipline.
String in lowercase:
engineering discipline.

入力された文字を小文字に変換する

例:

#include <iostream>
using namespace std;

int main()
{
   char X;
   cout<<"Enter a character:"; 
   cin>>X;
   X=X+32;
   cout<<"Converted character to lowercase:";
   cout<<X;
   return 0;
}

入力文字のASCII値に32を加えて、小文字に変換する必要があります。

出力:

Enter a character:R
Converted character to lowercase:r

結論

この記事では、C++における文字と文字列の入力を小文字と大文字に変換する方法について理解しました。ASCIIメソッドで重要なことは、入力された文字をASCIIに変換し、その後再び戻すだけだという事実です。誰かが文字の代わりに数字を入力すると、ランダムな出力が得られます。

入力を処理して、入力された値が実際に文字であることを確認するか、単純に toupper() および tolower() 関数を使用することができます。このチュートリアルがあなたにとって役立ったことを願っています。質問があれば下にコメントしてください。

参考文献

  • C++の文字列を大文字にする
  • C++の文字列を小文字にする

関連記事: