ヌル終端バイト文字列
From cppreference.com
ヌル終端バイト文字列 (null-terminated byte string, NTBS) とは、0ではないバイトのシーケンスの後に値0のバイト(終端ヌル文字)が続くものです。バイト文字列の各バイトは、何らかの文字セットの1文字をエンコードします。例えば、文字配列 {'\x63','\x61','\x74','\0'} は、ASCII エンコーディングで文字列 "cat" を保持する NTBS です。
目次 |
[編集] 関数
文字の分類 | |
| ヘッダ
<ctype.h> で定義 | |
| 文字が英数字か調べる (関数) | |
| 文字がアルファベットか調べる (関数) | |
| 文字が小文字か調べる (関数) | |
| 文字が大文字か調べる (関数) | |
| 文字が数字か調べる (関数) | |
| 文字が16進数文字か調べる (関数) | |
| 文字が制御文字か調べる (関数) | |
| 文字が表示可能文字か調べる (関数) | |
| 文字が空白文字か調べる (関数) | |
| (C99) |
文字がブランク文字か調べる (関数) |
| 文字が印刷可能文字か調べる (関数) | |
| 文字が句読点文字か調べる (関数) | |
文字操作 | |
| 文字を小文字に変換する (関数) | |
| 文字を大文字に変換する (関数) | |
注: to または is で始まり、その後に小文字が続く名前の追加関数が、将来的にヘッダ <ctype.h> に追加される可能性があるため、そのヘッダをインクルードするプログラムでは定義すべきではありません。
| ASCII値 | 文字 | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 10進数 | 16進数 | 8進数 | |||||||||||||
| 0–8 | \x0–\x8 |
\0–\10 |
制御コード (NUL など) |
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 9 | \x9
|
\11
|
タブ (\t) |
≠0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 10–13 | \xA–\xD |
\12–\15 |
空白 (\n, \v, \f, \r) |
≠0
|
0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 14–31 | \xE–\x1F |
\16–\37 |
制御コード | ≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 32 | \x20
|
\40
|
スペース | 0
|
≠0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 33–47 | \x21–\x2F |
\41–\57 |
!"#$%&'()*+,-./
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 48–57 | \x30–\x39 |
\60–\71 |
0123456789
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
0
|
0
|
0
|
≠0
|
≠0
|
| 58–64 | \x3A–\x40 |
\72–\100 |
:;<=>?@
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 65–70 | \x41–\x46 |
\101–\106 |
ABCDEF
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
≠0
|
≠0
|
0
|
0
|
≠0
|
| 71–90 | \x47–\x5A |
\107–\132 |
GHIJKLMNOPQRSTUVWXYZ
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
≠0
|
≠0
|
0
|
0
|
0
|
| 91–96 | \x5B–\x60 |
\133–\140 |
[\]^_`
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 97–102 | \x61–\x66 |
\141–\146 |
abcdef
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
≠0
|
0
|
≠0
|
0
|
≠0
|
| 103–122 | \x67–\x7A |
\147–\172 |
ghijklmnopqrstuvwxyz
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
≠0
|
0
|
≠0
|
0
|
0
|
| 123–126 | \x7B–\x7E |
\173–\176 |
{|}~
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 127 | \x7F
|
\177
|
バックスペース文字 (DEL) |
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
数値フォーマットとの変換 | |
| ヘッダー
<stdlib.h> で定義 | |
| バイト文字列を浮動小数点値に変換する (関数) | |
| (C99) |
バイト文字列を整数値に変換する (関数) |
| (C99) |
バイト文字列を整数値に変換する (関数) |
| (C99) |
バイト文字列を符号なし整数値に変換する (関数) |
| (C99)(C99) |
バイト文字列を浮動小数点値に変換する (関数) |
| (C23)(C23)(C23) |
浮動小数点値をバイト文字列に変換する (関数) |
| ヘッダ
<inttypes.h> で定義 | |
| (C99)(C99) |
バイト文字列を intmax_t または uintmax_t に変換する (関数) |
文字列操作 | |
| ヘッダー
<string.h> で定義 | |
| (C11) |
ある文字列を別の文字列にコピーする (関数) |
| (C11) |
ある文字列から別の文字列に指定された文字数をコピーする (関数) |
| (C11) |
2つの文字列を連結する (関数) |
| (C11) |
2つの文字列の指定された文字数を連結する (関数) |
| strcmp が strcoll と同じ結果になるように文字列を変換する (関数) | |
| (C23) |
文字列のコピーを割り当てる (関数) |
| (C23) |
指定されたサイズの文字列のコピーを割り当てる (関数) |
文字列検査 | |
| ヘッダー
<string.h> で定義 | |
| (C11) |
与えられた文字列の長さを返す (関数) |
| 2つの文字列を比較する (関数) | |
| 2つの文字列の指定された数の文字を比較する (関数) | |
| 現在のロケールに従って2つの文字列を比較する (関数) | |
| 最初に出現する文字を見つける (関数) | |
| 最後に出現する文字を見つける (関数) | |
| 以下から成る最大の初期セグメントの長さを返す 別のバイト文字列に含まれる文字のみ (関数) | |
| 以下から成る最大の初期セグメントの長さを返す 別のバイト文字列に含まれない文字のみ (関数) | |
| ある文字列に含まれる任意の文字が、別の文字列で最初に出現する位置を見つける (関数) | |
| 部分文字列が最初に出現する箇所を見つける (関数) | |
| (C11) |
バイト文字列内の次のトークンを見つける (関数) |
文字配列操作 | |
| ヘッダー
<string.h> で定義 | |
| 配列から文字が最初に出現する箇所を検索する (関数) | |
| 2つのバッファを比較する (関数) | |
| (C23)(C11) |
バッファを文字で埋める (関数) |
| (C11) |
あるバッファを別のバッファにコピーする (関数) |
| (C11) |
あるバッファを別のバッファに移動する (関数) |
| (C23) |
指定された区切り文字で停止しながら、あるバッファを別のバッファにコピーする (関数) |
その他 | |
| ヘッダー
<string.h> で定義 | |
| (C11)(C11) |
与えられたエラーコードのテキスト版を返す (関数) |
[編集] 参照
| 拡張コンテンツ |
|---|
|
[編集] 関連項目
| C++ ドキュメントのヌル終端バイト文字列
|