C++ Char データ型と例
シャアとは?
Char は、文字の格納用に設計された C++ データ型です。 Char は文字の頭字語です。これは整数データ型であり、値が整数として格納されることを意味します。 char は 1 バイトのメモリ サイズを使用します。また、単一の文字を格納します。
この C++ チュートリアルでは、次のことを学びます:
- シャアとは?
- ASCII とは?
- 文字宣言
- 構文:
- ASCII 値の出力
- Char 値の出力
- 文字の入力
- 文字を文字列に変換する
ASCII とは?
char 値は ASCII 文字として解釈されます。これは、ブール値が true または false として解釈される方法に似ています。 ASCII は、American Standard Code for Information Interchange の頭字語です。英字を数字として表す特定の方法を定義します。
数値の範囲は 0 ~ 127 です。たとえば、文字「a」は ASCII コード 97 に相当します。
文字宣言
C++ で char 変数を宣言するには、char キーワードを使用します。この後に変数の名前が続く必要があります。変数は宣言時に初期化できます。変数の値は一重引用符で囲む必要があります。
構文:
C++ での char 宣言の構文は次のとおりです:
char variable-name;
variable-name は、変数に割り当てられる名前です。
宣言時に値を割り当てる場合は、次の構文を使用できます:
char variable-name = 'value';
- 変数名は、char 変数の名前です。
- value は、char 変数に割り当てられる値です。
例 1:
#include <iostream> using namespace std; int main() { char grade = 'B'; cout << "I scored a: "<<grade; return 0; }
出力:
コードのスクリーンショットは次のとおりです:
コードの説明:
<オール>ASCII 値の出力
上記のように、各文字は ASCII 文字として解釈されます。任意の文字の ASCII 値を取得できます。文字を int() 関数に渡すだけです。このプロセスは型キャストと呼ばれます。これを実演してみましょう:
例 2:
#include <iostream> using namespace std; int main() { char ch; cout << "Enter any character: "; cin >> ch; cout << "The ASCII Value of " << ch << " is " << int(ch); return 0; }
出力:
コードのスクリーンショットは次のとおりです:
コードの説明:
<オール>文字値の出力
ASCII 値を指定すると、C++ コンパイラは対応する文字を返すことができます。 char 変数を宣言し、それに整数値を割り当てます。対応する文字値に変換されます。
例 3:
#include <iostream> using namespace std; int main() { char x = 64, y = 66, z = 71; cout << x; cout << y; cout << z; return 0; }
出力:
コードのスクリーンショットは次のとおりです:
コードの説明:
<オール>文字の入力
std::cin 関数を使用して、ユーザーがキーボードから入力した文字を読み取ることができます。 std::cin を使用すると、多くの文字を入力できます。ただし、文字変数は 1 文字しか保持できません。これは、入力された最初の文字のみが抽出され、文字変数に格納されることを意味します。残りは、std::cin によって使用されるバッファーに残ります。それを抽出するには、std::cin への後続の呼び出しを行います。
例 4:
#include <iostream> using namespace std; int main() { cout << "Type a sequence of characters: "; char ch; cin >> ch; cout <<"The ASCII code of "<< ch << " is "<< int(ch) << '\n'; cin >> ch; cout <<"The ASCII code of " << ch << " is "<< int(ch) << '\n'; return 0; }
出力:
コードのスクリーンショットは次のとおりです:
コードの説明:
<オール>文字を文字列に変換する
文字を文字列に変換するために使用できる方法はいくつかあります。
それらについて話し合いましょう:
#1:文字列クラスによって指定されたコンストラクターの使用
これは、次の構文を使用して実行できます:
string st(int n,char x);
パラメータ n は、生成される文字列のサイズを示します。
パラメータ x は、文字列に変換する文字です。
この関数は文字列を返します。
例 5:
#include<iostream> #include <string> using namespace std; int main() { string st(1, 'C'); cout << "The resulting string is : " << st; return 0; }
出力:
コードのスクリーンショットは次のとおりです:
コードの説明:
<オール>#2) std::string 演算子 =および +=の使用
=および +=演算子は、すでに文字でオーバーロードされています。この 2 つは、特定の文字を文字列に変換するために使用できます。
例 6:
#include<iostream> #include <string> using namespace std; int main() { string st; char b = 'B'; st = 'A'; st += b; cout << "The resulting string is : " << st; return 0; }
出力:
コードのスクリーンショットは次のとおりです:
コードの説明:
<オール>#3:std::string メソッドの使用
std::string クラスには、文字を文字列に変換するのに役立つオーバーロードされた関数が多数付属しています。
それらには以下が含まれます:
- プッシュバック
この関数は、文字列の末尾に特定の文字を割り当てます。文字のオーバーロードです。
次の構文を取ります:
void push_back(char ch)
パラメータ ch は、文字列に変更される文字です。
- 追加
特定の文字の多くのコピーを文字列に割り当てます。
この関数の構文は次のとおりです:
string& append(size_t n,char ch)
パラメータ n は、文字が追加される回数を示します。
パラメータ ch は、string に追加する文字です。
- 割り当て
この関数は、文字列の現在の内容を、指定された文字の n 個のコピーに置き換えます。
次の構文を取ります:
string& assign(size_t n,char ch);
パラメータ n は、キャラクターの合計コピー数を示します。
パラメータ ch は、文字列にコピーする文字です。
- 挿入
挿入関数は、引数で指定されたとおり、文字列の開始位置に n 個の文字のコピーを挿入します。
次の構文を取ります:
string& insert(size_t p,size_t n,char ch);
p パラメータは、文字が挿入される先頭からの位置を示します。
パラメータ n は、キャラクターの合計コピー数を示します。
パラメータ ch は、文字列に挿入する文字です。
例 7:
#include<iostream> #include <string> using namespace std; int main() { string st; st.push_back('A'); cout << "push_back A returns : " << st << endl; st = ""; st.append(1, 'C'); cout << "append C returns : " << st << endl; st = ""; st.assign(1, 'D'); cout << "assign D returns : " << st << endl; st.insert(0, 1, 'E'); cout << "insert single character returns : " << st << endl; return 0; }
出力:
コードのスクリーンショットは次のとおりです:
<オール>
#4: std::stringstream の使用
このクラスを使用して文字を文字列に変換するには、文字をストリームに挿入します。
それらは文字列に書き込まれます。
例 8:
#include<iostream> #include <string> #include <sstream> using namespace std; int main() { string st; stringstream myst; myst << 'A'; myst >> st; cout << "The conversion of the single character returns the string: " << st; return 0; }
出力:
コードのスクリーンショットは次のとおりです:
コードの説明:
<オール>まとめ:
- char は、文字の格納に使用される C++ データ型です。
- C++ Char は整数データ型です。つまり、値は整数として格納されます。
- 1 バイトのメモリ サイズを占有します。
- C++ Char は 1 文字のみを格納します。
- Char 値は ASCII 文字として解釈されます。
- ASCII は、American Standard Code for Information Interchange の頭字語です。
- 英語の文字を数字で表す特定の方法を示します。
- 文字の ASCII 値を確認するには、それを int() 関数に渡します。
- ASCII 値の対応する char 値を確認するには、ASCII を文字として定義します。
C言語