|
25 Years of Programming
An open source source for C, C++, OWL, BASIC, MDB, XLS, DOT, and more... |
Home Projects Up Sitemap Search Blog Forum+Chat About Us Privacy Terms of Use Feedback FAQ Images Services Payments Humor Music |
Borland C++ program to classify ASCII chars by typeischars.cpp is a Borland C++ 4.0 MSDOS console utility program that shows how each of the 256 ASCII characters gets classified by the classification functions isalnum, isalpha, isascii, iscntrl, isdigit, isxdigit, isgraph, isprint, ispunct, isupper, islower, and isspace. The program writes the output table to a file with the columns delimited by tabs so the text can be imported into Excel or Access. The output table below shows that in Borland 4.0 under MSDOS 6, these functions only classified characters in the "real" ASCII set, up to ASCII 127. Characters above 127 did not belong to any of these sets. |
/* ischars.cpp 2-21-01
Copyright (C)2001 Steven Whitney.
Published under GNU GPL (General Public License) Version 3, with ABSOLUTELY NO WARRANTY.
Initially published by http://25yearsofprogramming.com.
Trivial utility creates a file with all 256 chars classified by the various
Borland C++ 4.0 isascii(), etc. functions, with columns tab-delimited for output
to Excel or Access.
Used for building definitions and attribute lists for the chars in wtalk.mdb.
Keep for a while in case it must be rebuilt.
*/
#include "c:\bcs\my.h"
#include "c:\bcs\mylib.cpp"
//////////////////////////////////////////////////////////////////////////////
int main(int argc, char **argv)
{
ofstream outfile("ischars.txt");
outfile << "No." << "\t" << "Char" << "\t";
outfile << "ascii" << "\t" << "control" << "\t" << "space" << "\t" << "print" << "\t";
outfile << "graph" << "\t" << "punct" << "\t" << "alnum" << "\t" << "digit" << "\t";
outfile << "xdigit" << "\t" << "alpha" << "\t" << "upper" << "\t" << "lower" << endl;
for(int c = 0 ; c < 256 ; c++)
{
outfile << c << "\t" << (isprint(c) ? (uchar)c : '.') << "\t";
outfile << (isascii(c) ? "X" : "O") << "\t";
outfile << (iscntrl(c) ? "X" : "O") << "\t";
outfile << (isspace(c) ? "X" : "O") << "\t";
outfile << (isprint(c) ? "X" : "O") << "\t";
outfile << (isgraph(c) ? "X" : "O") << "\t";
outfile << (ispunct(c) ? "X" : "O") << "\t";
outfile << (isalnum(c) ? "X" : "O") << "\t";
outfile << (isdigit(c) ? "X" : "O") << "\t";
outfile << (isxdigit(c) ? "X" : "O") << "\t";
outfile << (isalpha(c) ? "X" : "O") << "\t";
outfile << (isupper(c) ? "X" : "O") << "\t";
outfile << (islower(c) ? "X" : "O") << endl;
}
return(0);
}
X = Yes, the character does belong to this set.
O = No, the character does not belong to this set.
Char# Print.
No. Char ascii control space print graph punct alnum digit xdigit alpha upper lower
0 . X X O O O O O O O O O O
1 . X X O O O O O O O O O O
2 . X X O O O O O O O O O O
3 . X X O O O O O O O O O O
4 . X X O O O O O O O O O O
5 . X X O O O O O O O O O O
6 . X X O O O O O O O O O O
7 . X X O O O O O O O O O O
8 . X X O O O O O O O O O O
9 . X X X O O O O O O O O O
10 . X X X O O O O O O O O O
11 . X X X O O O O O O O O O
12 . X X X O O O O O O O O O
13 . X X X O O O O O O O O O
14 . X X O O O O O O O O O O
15 . X X O O O O O O O O O O
16 . X X O O O O O O O O O O
17 . X X O O O O O O O O O O
18 . X X O O O O O O O O O O
19 . X X O O O O O O O O O O
20 . X X O O O O O O O O O O
21 . X X O O O O O O O O O O
22 . X X O O O O O O O O O O
23 . X X O O O O O O O O O O
24 . X X O O O O O O O O O O
25 . X X O O O O O O O O O O
26 . X X O O O O O O O O O O
27 . X X O O O O O O O O O O
28 . X X O O O O O O O O O O
29 . X X O O O O O O O O O O
30 . X X O O O O O O O O O O
31 . X X O O O O O O O O O O
32 X O X X O O O O O O O O
33 ! X O O X X X O O O O O O
34 " X O O X X X O O O O O O
35 # X O O X X X O O O O O O
36 $ X O O X X X O O O O O O
37 % X O O X X X O O O O O O
38 & X O O X X X O O O O O O
39 ' X O O X X X O O O O O O
40 ( X O O X X X O O O O O O
41 ) X O O X X X O O O O O O
42 * X O O X X X O O O O O O
43 + X O O X X X O O O O O O
44 , X O O X X X O O O O O O
45 - X O O X X X O O O O O O
46 . X O O X X X O O O O O O
47 / X O O X X X O O O O O O
48 0 X O O X X O X X X O O O
49 1 X O O X X O X X X O O O
50 2 X O O X X O X X X O O O
51 3 X O O X X O X X X O O O
52 4 X O O X X O X X X O O O
53 5 X O O X X O X X X O O O
54 6 X O O X X O X X X O O O
55 7 X O O X X O X X X O O O
56 8 X O O X X O X X X O O O
57 9 X O O X X O X X X O O O
58 : X O O X X X O O O O O O
59 ; X O O X X X O O O O O O
60 < X O O X X X O O O O O O
61 = X O O X X X O O O O O O
62 > X O O X X X O O O O O O
63 ? X O O X X X O O O O O O
64 @ X O O X X X O O O O O O
65 A X O O X X O X O X X X O
66 B X O O X X O X O X X X O
67 C X O O X X O X O X X X O
68 D X O O X X O X O X X X O
69 E X O O X X O X O X X X O
70 F X O O X X O X O X X X O
71 G X O O X X O X O O X X O
72 H X O O X X O X O O X X O
73 I X O O X X O X O O X X O
74 J X O O X X O X O O X X O
75 K X O O X X O X O O X X O
76 L X O O X X O X O O X X O
77 M X O O X X O X O O X X O
78 N X O O X X O X O O X X O
79 O X O O X X O X O O X X O
80 P X O O X X O X O O X X O
81 Q X O O X X O X O O X X O
82 R X O O X X O X O O X X O
83 S X O O X X O X O O X X O
84 T X O O X X O X O O X X O
85 U X O O X X O X O O X X O
86 V X O O X X O X O O X X O
87 W X O O X X O X O O X X O
88 X X O O X X O X O O X X O
89 Y X O O X X O X O O X X O
90 Z X O O X X O X O O X X O
91 [ X O O X X X O O O O O O
92 \ X O O X X X O O O O O O
93 ] X O O X X X O O O O O O
94 ^ X O O X X X O O O O O O
95 _ X O O X X X O O O O O O
96 ` X O O X X X O O O O O O
97 a X O O X X O X O X X O X
98 b X O O X X O X O X X O X
99 c X O O X X O X O X X O X
100 d X O O X X O X O X X O X
101 e X O O X X O X O X X O X
102 f X O O X X O X O X X O X
103 g X O O X X O X O O X O X
104 h X O O X X O X O O X O X
105 i X O O X X O X O O X O X
106 j X O O X X O X O O X O X
107 k X O O X X O X O O X O X
108 l X O O X X O X O O X O X
109 m X O O X X O X O O X O X
110 n X O O X X O X O O X O X
111 o X O O X X O X O O X O X
112 p X O O X X O X O O X O X
113 q X O O X X O X O O X O X
114 r X O O X X O X O O X O X
115 s X O O X X O X O O X O X
116 t X O O X X O X O O X O X
117 u X O O X X O X O O X O X
118 v X O O X X O X O O X O X
119 w X O O X X O X O O X O X
120 x X O O X X O X O O X O X
121 y X O O X X O X O O X O X
122 z X O O X X O X O O X O X
123 { X O O X X X O O O O O O
124 | X O O X X X O O O O O O
125 } X O O X X X O O O O O O
126 ~ X O O X X X O O O O O O
127 . X X O O O O O O O O O O
128 . O O O O O O O O O O O O
129 . O O O O O O O O O O O O
130 . O O O O O O O O O O O O
131 . O O O O O O O O O O O O
132 . O O O O O O O O O O O O
133 . O O O O O O O O O O O O
134 . O O O O O O O O O O O O
135 . O O O O O O O O O O O O
136 . O O O O O O O O O O O O
137 . O O O O O O O O O O O O
138 . O O O O O O O O O O O O
139 . O O O O O O O O O O O O
140 . O O O O O O O O O O O O
141 . O O O O O O O O O O O O
142 . O O O O O O O O O O O O
143 . O O O O O O O O O O O O
144 . O O O O O O O O O O O O
145 . O O O O O O O O O O O O
146 . O O O O O O O O O O O O
147 . O O O O O O O O O O O O
148 . O O O O O O O O O O O O
149 . O O O O O O O O O O O O
150 . O O O O O O O O O O O O
151 . O O O O O O O O O O O O
152 . O O O O O O O O O O O O
153 . O O O O O O O O O O O O
154 . O O O O O O O O O O O O
155 . O O O O O O O O O O O O
156 . O O O O O O O O O O O O
157 . O O O O O O O O O O O O
158 . O O O O O O O O O O O O
159 . O O O O O O O O O O O O
160 . O O O O O O O O O O O O
161 . O O O O O O O O O O O O
162 . O O O O O O O O O O O O
163 . O O O O O O O O O O O O
164 . O O O O O O O O O O O O
165 . O O O O O O O O O O O O
166 . O O O O O O O O O O O O
167 . O O O O O O O O O O O O
168 . O O O O O O O O O O O O
169 . O O O O O O O O O O O O
170 . O O O O O O O O O O O O
171 . O O O O O O O O O O O O
172 . O O O O O O O O O O O O
173 . O O O O O O O O O O O O
174 . O O O O O O O O O O O O
175 . O O O O O O O O O O O O
176 . O O O O O O O O O O O O
177 . O O O O O O O O O O O O
178 . O O O O O O O O O O O O
179 . O O O O O O O O O O O O
180 . O O O O O O O O O O O O
181 . O O O O O O O O O O O O
182 . O O O O O O O O O O O O
183 . O O O O O O O O O O O O
184 . O O O O O O O O O O O O
185 . O O O O O O O O O O O O
186 . O O O O O O O O O O O O
187 . O O O O O O O O O O O O
188 . O O O O O O O O O O O O
189 . O O O O O O O O O O O O
190 . O O O O O O O O O O O O
191 . O O O O O O O O O O O O
192 . O O O O O O O O O O O O
193 . O O O O O O O O O O O O
194 . O O O O O O O O O O O O
195 . O O O O O O O O O O O O
196 . O O O O O O O O O O O O
197 . O O O O O O O O O O O O
198 . O O O O O O O O O O O O
199 . O O O O O O O O O O O O
200 . O O O O O O O O O O O O
201 . O O O O O O O O O O O O
202 . O O O O O O O O O O O O
203 . O O O O O O O O O O O O
204 . O O O O O O O O O O O O
205 . O O O O O O O O O O O O
206 . O O O O O O O O O O O O
207 . O O O O O O O O O O O O
208 . O O O O O O O O O O O O
209 . O O O O O O O O O O O O
210 . O O O O O O O O O O O O
211 . O O O O O O O O O O O O
212 . O O O O O O O O O O O O
213 . O O O O O O O O O O O O
214 . O O O O O O O O O O O O
215 . O O O O O O O O O O O O
216 . O O O O O O O O O O O O
217 . O O O O O O O O O O O O
218 . O O O O O O O O O O O O
219 . O O O O O O O O O O O O
220 . O O O O O O O O O O O O
221 . O O O O O O O O O O O O
222 . O O O O O O O O O O O O
223 . O O O O O O O O O O O O
224 . O O O O O O O O O O O O
225 . O O O O O O O O O O O O
226 . O O O O O O O O O O O O
227 . O O O O O O O O O O O O
228 . O O O O O O O O O O O O
229 . O O O O O O O O O O O O
230 . O O O O O O O O O O O O
231 . O O O O O O O O O O O O
232 . O O O O O O O O O O O O
233 . O O O O O O O O O O O O
234 . O O O O O O O O O O O O
235 . O O O O O O O O O O O O
236 . O O O O O O O O O O O O
237 . O O O O O O O O O O O O
238 . O O O O O O O O O O O O
239 . O O O O O O O O O O O O
240 . O O O O O O O O O O O O
241 . O O O O O O O O O O O O
242 . O O O O O O O O O O O O
243 . O O O O O O O O O O O O
244 . O O O O O O O O O O O O
245 . O O O O O O O O O O O O
246 . O O O O O O O O O O O O
247 . O O O O O O O O O O O O
248 . O O O O O O O O O O O O
249 . O O O O O O O O O O O O
250 . O O O O O O O O O O O O
251 . O O O O O O O O O O O O
252 . O O O O O O O O O O O O
253 . O O O O O O O O O O O O
254 . O O O O O O O O O O O O
255 . O O O O O O O O O O O O
|
|
|
|
|
|
|
Copyright ©2010 Steven Whitney. Last modified Thu 10/21/2010 02:08:04 -0700. |
||