日々のコンピュータ情報の集積と整理

Dr.ウーパのコンピュータ備忘録

2015年3月25日水曜日

C言語:数として用いられる文字を列挙するサンプルプログラム

イントロダクション

ascii コードの文字を列挙したいということはありますよね。

そんなとき、C 言語などのプログラミング言語を使用すれば、簡単に列挙することができます。


今回は、C 言語で ascii コードの数字を列挙するサンプルを紹介します。

ASCII文字コード : IT用語辞典
http://e-words.jp/p/r-ascii.html


C言語:asciiコードのアルファベット(大文字)を列挙するサンプルプログラム


プログラムコード

#include <stdio.h>

void main(void) {

 char c;
 for (c = '0' ; c <= '9'; c++ ) {
  printf("%c", c);
 }
}



ファイル名:main.c など


実行結果

0123456789


解説

以上のように、ascii コード表の '0' (文字コード:48)から、'9' (文字コード:57)までの、計 26 種類の文字を列挙することが出来ました。

画面上に表示される文字は、プログラム内では”文字コード”という数値データで扱われています。

そのため、for 文という繰り返し処理を行うプログラムによって、文字コードに対して 1 つずつ値を加算しながら、その文字を画面上に表示することで、ある範囲の文字を列挙することができます。


今回の例では、

 char c;
 for (c = '0' ; c <= '9'; c++ ) {
  printf("%c", c);
 }

となっており、変数 c を用いて、 '0' (文字コード:48)から、'9' (文字コード:57)まで、1つずつ加算しながらループ処理を行い、printf によって文字コードを文字として画面上に表示しています。


では、プログラムを構成する各要素について見てみましょう。

char c;
変数 c を使えるようにします。

for 
繰り返し処理を実施します。

            (
ループの条件の記載を開始します。

            c = '0' 
ループの初期条件として、c に 文字コードの数値 48 ('0')を設定します。

c = '0' でなぜ、その文字の文字コードが取得できるのかというと、C 言語では文字を '(シングルクォーテーション)で囲むと、その文字の文字コードを表すことが出来るからです。


注意しなければならないのは、0 を '(シングルクォーテーション)で囲まないと、数値データの 0 が入ってしまうことです。

数値データの 0 を文字として表示すると、制御文字の NUL となるため注意が必要です。


           
ループの初期条件の記載はここまでです。

            c <= '9'
ループの継続条件として、c が 文字コードの数値 57 ('9') 以下であれば継続します。

注意しなければならないのは、9 を '(シングルクォーテーション)で囲まないと、数値データの 9 が入ってしまうことです。

数値データの 9 を文字として表示すると、制御文字の HT となるため注意が必要です。

           ;
ループの継続条件の記載はここまでです。

            c++ 
ループ内の処理が、繰り返しによって再び実施するときの処理を記載します。

変数 c を 1 つずつ加算しながらループします。
c++ は、c = c + 1 と同じです。


            ) 
ループの繰り返し実施時の処理はここまでです。
ループの条件の記載を終了します。

{
繰り返し実施する処理の記載を開始します。

printf("%c", c);
printf 関数を用いて、情報を画面上へ表示します。
"%c" によって、変数 c が保持する数値データを文字情報として、画面へ表示することを指示しています。

}
繰り返し実施する処理の記載を終了します。


まとめ

このようにプログラムを記載すると、文字コード上連続する文字を、簡単に列挙することができます。

今回は C 言語でサンプルプログラムを示しましたが、他の言語でもだいたい同じような考えで、文字の列挙を行うことができることがあります。


関連記事

C言語:アルファベット(大文字)を列挙するサンプルプログラム
http://upa-pc.blogspot.com/2015/03/c-ascii-char-upper-case-sample.html

C言語:アルファベット(小文字)を列挙するサンプルプログラム
http://upa-pc.blogspot.com/2015/03/c-ascii-char-lower-case-sample.html

C言語:asciiコードの図形文字を列挙するサンプルプログラム
http://upa-pc.blogspot.com/2015/03/c-ascii-char-sample.html

数字、アルファベット、記号、日本語の文字一覧を知る方法
http://upa-pc.blogspot.com/2015/03/char-info-list.html







関連記事

関連記事を読み込み中...

同じラベルの記事を読み込み中...