読み方 : もじれつがた

文字列型【string type】String型

概要

文字列型とは複数の文字の並びを一つの値として格納するデータ型。多くのプログラミング言語データベース管理システムDBMS)に基本データ型の一つとして用意されており、文章や識別子、入力値などテキストデータの保持に用いられる。
文字列型のイメージ画像

コンピュータ上で文字は「文字コード」と呼ばれる識別番号で表され、文字列も内部的にはこの番号を連ねた数値列として扱われる。文字コードは国や言語によって様々な種類があり、言語や処理系によって対応する文字の種類は異なる。

古い言語や処理系ではASCII文字、いわゆる半角英数字・記号しか格納できない仕様のものもあった。近年の多くの言語や処理系では多言語処理に対応し、Shift JISのような日本語文字コード、あるいは世界中の言語の文字を収録したUnicodeで表現される多バイト文字もそのまま格納できるようになっている。

プログラムデータベースでは、数値としての計算が必要ない電話番号や郵便番号のような数字列も文字列型として定義される。ソースコード上で文字列型の値を記述する際は、数値など他のデータ型の値と区別するため「s = "文字列"」といったようにシングルクォーテーション(')やダブルクォーテーション(")で文字の前後を囲む文字列リテラルが用いられる。

文字列型には、格納できる長さをあらかじめ指定する「固定長文字列型」(fixed length string)と、任意の長さを格納できる「可変長文字列型」(variable length string)の二種類があり、言語や処理系によってはいずれか一方しか用意されていない場合もある。固定長は指定した長さに満たない文字列を格納すると未使用の領域が生じる。可変長は格納する文字列の長さに応じて領域の大きさが変化するため、長さの情報を別途管理する仕組みが必要となる。用途に応じてどちらの型を用いるかが選択される。

すべてのプログラミング言語に文字列型が標準で備わっているわけではない。C言語やC++言語では、一文字分の文字コードを格納する「文字型」(character typechar型)のみが用意されており、文字列は文字型配列変数として表現する仕組みになっている。一方、JavaPythonJavaScriptなどでは文字列型が標準で組み込まれており、開発者は内部の構造を意識せずに一つのまとまったデータとして文字列を操作できる。

(2026.6.28更新)
 

他の辞典等による「文字列型」の解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。