next up previous
Next: 練習問題 Up: 文字列 Previous: 文字列

文字と文字列

C言語では, 文字定数はシングルクォーテイション ' で囲まれ, 文字列定数は ダブルクォーテイション " で囲まれます. プログラムソース中で, クォーテイションの無い 1 は数の 1 であり, '1' は文字の 1 で, "1" は文字列の 1でこれらは違うものです.

C言語では, 文字列型と言う変数型が存在しません. 文字列は, 全て「特別な」char型の配列であり(ここでは, 漢字などの 2バイト文字は, 考慮にいれてません) 文字列の最後には必ず数としての0, C言語の文字記号で '\0' が付きます(null terminated stringと言う). '\0'は 終端文字と呼ばれています.

次のプログラムが, きちんと動く事をまず体験して下さい. while 文の ループが, 終端文字'\0'によって終了するところが重要です. 文字配列の初期化の方法にも注意して下さい.

/* File name 6-4.c */

#include <stdio.h>

main()
{
        char p[]="This is a test.";
        int  i=0;

        while(p[i]!=0){
                printf("%c = %d\n", p[i], p[i]);
                i++;
        }
}



Next: 練習問題 Up: 文字列 Previous: 文字列