>>この記事には書き直した新しいページがあります。<<
<<前 [TOP] 次>>
Visual Studioで新規プロジェクトを作り、次のcppファイルを作成して下さい。
【MojiTest1.cpp】
#include <iostream> void main() { char a; std::cout << "y か n を入力してください-->" << std::endl; std::cin >> a; if ( a == 'y' ) { std::cout << "Yes" << std::endl; } else if ( a == 'n' ) { std::cout << "No" << std::endl; } else { std::cout << "ERROR" << std::endl; } }
文字変数の入出力キーボードから、文字を1文字読み取り、'y'だったならばYESを、'n'だったならばNOを、それ以外だったならば、ERRORを表示するプログラムです。
C言語では、文字をシングルクォーテーション(’)で囲んで表す決まりになっています。
文字はあくまでも1個の文字を意味しています。
hello などのようないくつかの文字がある場合は、文字列といいます。
文字と文字列は異なるもので、扱い方も違います。
文字を格納する変数を文字変数といいます。
整数型や実数型に対する言葉としては、文字型といい、文字型変数とも言います。
この場合の文字とは、英数記号に限ります。
日本語の文字は、2つの数を組み合わせて表現しているので、文字変数には大きすぎて格納できません。
文字変数の宣言 char 変数名, 変数名・・・・
例2と例3は、c1, c2という2つの文字変数を宣言している点で同じです。
一方、例4は、文字変数 c を宣言した上で、文字 'a'を代入しています。
このように、宣言と代入(初期化)を一度にできるので、非常に便利です。
他の整数型や実数型などでも使えます。
コンピュータは大文字と小文字も区別しますので、このプログラムで、入力を「Y」としても、「y」とは区別され、出力結果は、「ERROR」になります。
サンプルプログラムをビルドしてデバッグしてみましょう。
キーボードから、文字を1文字読み取り、'y'だったならばYESを、'n'だったならばNOを、それ以外だったならば、ERRORを表示します。
Visual Studioで新規プロジェクトを作り、次のcppファイルを作成して下さい。
【MojiTest2.cpp】
#include <iostream> void main() { int a; char c; std::cout << "何か文字をひとつ入力してください-->" << std::endl; std::cin >> c; a = c; std::cout << "文字に割り当てられた値は" << a << "です。" << std::endl; }
文字に割り当てられた値を調べるために、キーボードから文字を1文字読み取り、その文字の値を調べるプログラムです。
標準入力 std::cin を使って文字をキーボードから読み取っています。
文字変数には、コンピュータで整数が割り当てられています。
文字の大きさは一般に次のようになっています。
このプログラムでは、与えられたchar型文字変数 c を整数型の変数 a に代入し直し、文字を整数に変えています。
サンプルプログラムをビルドしてデバッグしてみましょう。
キーボードから文字を一文字入力すると、その文字に割り当てられた整数が画面に表示されます。
Visual Studioで新規プロジェクトを作り、次のcppファイルを作成して下さい。
【MojiTest3.cpp】
#include <iostream> void main() { int i; char c; i = 'a' + 'A'; std::cout << "例1: a' + 'A' = " << i << std::endl; c = 1 + 'a'; i = c; std::cout << "例2: 1 + 'a' を整数で出力すると" << i << std::endl; std::cout << "例3: 1 + 'a' を文字で出力すると" << c << std::endl; }