文字列定数
ソースコード内に べた書きした文字列だよ
データベースの話で出てきた場合は、SQL文とかに べた書きした文字列だよ
「"ピヨ太"」とか「'ピヨ太'」みたいな形で出てくるよ
簡単に書くよ
文字列定数(読:モジレツテイスウ 英:string literal)とは
「文字列リテラル」のこと。
用語の中身としては
人間語で書いたプログラムの元ネタ(ソースコード)の中に直接べた書きした文字列
(文字の集まり)のこと
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として
・文字
・文字列
・ソースコード
・直定数(リテラル)
について説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
文字は「あ」とか「い」とかです。
コンピュータの世界においては、記号としての文字を指します。
文字列は複数の文字を集めたものです。
「眠い」とか「お腹空いた」とかの単語や文章を指します。
「文字」と「文字列」の違いは意識してあげてください。
コンピュータの世界において、文字と文字列は区別されます。
コンピュータの世界、特にプログラミング関連では「あ」や「い」のような「記号としての文字」と「眠い」や「お腹空いた」のような「言葉としての文字」を区別します。
そして
・記号としての文字 → 文字
・言葉としての文字 → 文字列
と呼び分けるのです。
ソースコードは「人間語で書いたプログラムの元ネタ」です。
プログラムを作って動かすまでの一般的な流れは
1.人間語でプログラムの元ネタを書く
2.元ネタを人間語から機械語に翻訳する
3.翻訳された指示に従って、コンピュータさんが お仕事する
です。
コンピュータさんは人間語が分かりません。
人間様はコンピュータさんの言葉が分かりません。
プログラムは人間様が作るものです。
そこで最初は人間様が分かる言葉でプログラムを作ります。
コンピュータさんに対する「あれをやれ」「これをやれ」な命令を人間語で書くのです。
次に人間語で書いたプログラムの元ネタをコンピュータさんが分かる言葉に翻訳します。
実際に お仕事をするのは、コンピュータさんですからね。
コンピュータさんが分かる言葉に変換する必要があるのです。
コンピュータさんが分かる言葉に翻訳したので、コンピュータさんは命令の内容を理解できます。
指示に従って、お仕事をしてくれるでしょう。
かなり簡略化した説明ですけどね。
これがプログラムを作るときの流れです。
この話で登場した
人間語で書いたプログラムの元ネタ
を「ソースコード」と言います。
直定数は「ソースコードの中に直接 書きこんである文字とか数字とか」です。
一般的にはカタカナで「リテラル」と表現されます。
「直定数」や「リテラル」という用語には馴染みがなくても、プログラミングをするときには絶対に使っているはずです。
例えば、以下の処理が あったとしましょう。
name = "ピヨ太";
age = 18;
この処理は
1.変数「name」に文字列「ピヨ太」を入れる
2.変数「age」に数字「18」を入れる
処理です。
この処理に登場した
・文字列「ピヨ太」
・数字「18」
が直定数(リテラル)です。
name = "ピヨ太";
age = 18;
もったいぶって書きましたが、たいしたことは書いていませんね。
「直定数」や「リテラル」と聞くとなんかカッコいい響きですが、実際は ただの べた書きした文字とか数字です。
※今回はプログラミングの話で説明していますが、データベースの話とかでも出てくることがあります。その場合でも考え方は同じです。「(SQL文の中とかに)べた書きした文字とか数字とか」がリテラルです。
以上を踏まえて
ソースコードの中に直接 書きこんである文字列
が「文字列定数」です。
「文字列リテラル」とも呼ばれます……というか個人的には「文字列リテラル」という言い方の方が馴染みがあります。
※本ページでも以降は「文字列リテラル」と表現します。
例えば、そうですね。
以下の処理が あったとしましょう。
name = "ピヨ太";
age = 18;
この処理は
1.変数「name」に文字列「ピヨ太」を入れる
2.変数「age」に数字「18」を入れる
処理です。
この処理に登場した
・文字列「ピヨ太」
が文字列リテラルです。
プログラミング言語の種類にもよりますが、文字列リテラルは「"(ダブルクォーテーション)」や「'(シングルクォーテーション)」で囲まれているのが一般的です。
例えば
"ピヨ太"
や
'ピヨ太'
のような形で登場します。
一言でまとめるよ
まぁ「文字列定数」って単語が出てきたら「ソースコード
(人間語で書いたプログラムの元ネタ)に べた書きした文字列
(文字の集まり)なんだな~」と お考えください。
おまけ
■検索してみる?






