実は文字列の変数は配列なんです。
えぇ!!。。。どういうこと?って思いますよね。
そもそも、文字列とは文字(1文字のデータ)が集まったものです。
説明をするために図を書くとそれ自体に時間がかかるので、
今回は前回の変数をブログ向きにアレンジした表記を考えます。
【変数の表現】
変数名{データ}
配列変数名{0[データ]、1[データ]、2[データ]}
と置き換えたいと思います。
箱を{}で表しました。
[]は箱の中の仕切りで区切られた部分です。
後ほど配列の話がしやすいように配列のインデックスを[]の前に記述しています。
【データの表現についての注意】
1)数値は整数で書いてもプチコンの場合、固定少数点方式の実数です。
2)文字列は必ず”(ダブルクォーテーション)で囲みます。
3)一文字のデータについて
プチコンの文字列は一般的にアスキー文字列と呼ばれるものに
特殊なキャラクタが追加されています。
この文字データはい一文字を’(シングルクォーテーション)で囲みます。
このアスキーとは文字表現基準のひとつです。
初期のコンピュータで使われる文字は英数字と一般的に使われる一部の記号だけだったので、
それを並べた7ビットアスキーキャラクタと呼ばれるものが採用されています。
文字の種類は128種類以下だったのですべての文字に番号をつけアスキーコードと呼びました。
・アスキーコード0(16進00H)から制御コードと呼ばれるコードで実際に表示する文字ではありませんでした。
・アスキ-コード32(16進20H)からスペースを含む記号類です。
・アスキ-コード48(16進30H)から’0’から’9’までの数字(記号含む)です。
・アスキーコード64(16進40H)から’A’から’Z’までの英大文字(記号含む)です。
・アスキーコード96(16進40H)から’a’から’z’までの英小文字(記号含む)です。
プチコンの場合これに使われていないコード128から255にカタカナや特殊文字を充てています。
0から255までのデータは2進数8ビットになります。(過去記事参考)
8ビットのデータを1バイトと呼びます。
バイトについてはよく聞く言葉なので説明は省きます。
ではプチコンの文字列データ”ABC”が変数S$に代入されたとき、
プチコンのなかでは。。。
S${0[’A’]、1[’B’]、2[’C’]}
となっています。
ただし、プチコンでは実際に配列として扱っていないため、
配列宣言などされません。