XINU
Variables
ctype_.c File Reference

「文字種類の判定」や「文字変換」の際に使用するビットマスク配列を定義する。 More...

#include <ctype.h>
Include dependency graph for ctype_.c:

Go to the source code of this file.

Variables

const char _ctype_ []
 「文字種類の判定」や「文字変換」の際に使用するビットマスク配列
More...
 

Detailed Description

「文字種類の判定」や「文字変換」の際に使用するビットマスク配列を定義する。

ASCII文字コード表
[16進数] [10進数]
2 3 4 5 6 7 30 40 50 60 70 80 90 100 110 120
----------— ------------------------------—
0: 0 @ P ` p 0: ( 2 < F P Z d n x
1: ! 1 A Q a q 1: ) 3 = G Q [ e o y
2: " 2 B R b r 2: * 4 > H R \ f p z
3: # 3 C S c s 3: ! + 5 ? I S ] g q {
4: $ 4 D T d t 4: " , 6 @ J T ^ h r |
5: % 5 E U e u 5: # - 7 A K U _ i s }
6: & 6 F V f v 6: $ . 8 B L V ` j t ~
7: ' 7 G W g w 7: % / 9 C M W a k u DEL
8: ( 8 H X h x 8: & 0 : D N X b l v
9: ) 9 I Y i y 9: ' 1 ; E O Y c m w
A: * : J Z j z
B: + ; K [ k {
C: , < L \ l |
D: - = M ] m }
E: . > N ^ n ~
F: / ? O _ o DEL
※ 16進数は列の値に、行の値を連結して読む(列=7、行=Aの場合、7A='z')
※ 10進数は列の値に、行の値を加算して読む(列=50、行=6の場合、56='8')

Note
Doxygenドキュメント上ではASCII表がズレるため、ASCII表のスクショを併記する。
ascii.png

Definition in file ctype_.c.

Variable Documentation

◆ _ctype_

const char _ctype_[]
Initial value:
= {
0,
_C, _C, _C, _C, _C, _C, _C, _C,
_C, _S, _S, _S, _S, _S, _C, _C,
_C, _C, _C, _C, _C, _C, _C, _C,
_C, _C, _C, _C, _C, _C, _C, _C,
_S, _P, _P, _P, _P, _P, _P, _P,
_P, _P, _P, _P, _P, _P, _P, _P,
_N, _N, _N, _N, _N, _N, _N, _N,
_N, _N, _P, _P, _P, _P, _P, _P,
_P, _U | _X, _U | _X, _U | _X, _U | _X, _U | _X, _U | _X,
_U,
_U, _U, _U, _U, _U, _U, _U, _U,
_U, _U, _U, _U, _U, _U, _U, _U,
_U, _U, _U, _P, _P, _P, _P, _P,
_P, _L | _X, _L | _X, _L | _X, _L | _X, _L | _X, _L | _X,
_L,
_L, _L, _L, _L, _L, _L, _L, _L,
_L, _L, _L, _L, _L, _L, _L, _L,
_L, _L, _L, _P, _P, _P, _P, _C}
#define _L
アルファベット小文字を判定するためのビットマスク
Definition: ctype.h:33
#define _U
アルファベット大文字を判定するためのビットマスク
Definition: ctype.h:31
#define _X
16進数の文字を判定するためのビットマスク
Definition: ctype.h:43
#define _S
空白文字を判定するためのビットマスク
Definition: ctype.h:37
#define _N
10進数の文字を判定するためのビットマスク
Definition: ctype.h:35
#define _C
制御文字 (control character)を判定するためのビットマスク
Definition: ctype.h:41
#define _P
区切り文字を判定するためのビットマスク
Definition: ctype.h:39

「文字種類の判定」や「文字変換」の際に使用するビットマスク配列

「文字種類の判定」や「文字変換」の際に使用するビットマスク配列

Note
ASCII文字は7bit(0〜127の数値)で表される。そのため、_ctype_配列に
英字、数値、制御文字などを判定するためのビットマスクを予め仕込んでおき、
Step1. チェック対象文字を配列の添字として、_ctype_配列からビットマスクを取得
Step2. 前手順Step2.で取得したビットマスクが期待値通りかチェック
という手順を実施する事によって、文字の種類を判定できる。

Definition at line 39 of file ctype_.c.