test for a letter or underscore
#include <ctype.h> int __iscsymf( int c );
The __iscsymf() function tests for a letter or underscore. These characters are valid as the first character in a C identifier. The __iscsym() functions tests for characters that are valid as succeeding characters in a C symbol name.
A non-zero value is returned when the character is a letter or underscore; otherwise, zero is returned.
isalpha(), isalnum(), iscntrl(), __iscsym(), isdigit(), isgraph(), islower(), isprint(), ispunct(), isspace(), isupper(), isxdigit(), tolower(), toupper()
#include <stdio.h> #include <ctype.h> char chars[] = {'A', 0x80, '_', '9', '+'}; #define SIZE sizeof( chars ) / sizeof( char ) void main() { int i; for( i = 0; i < SIZE; i++ ) { printf( "Char %c is %sa csymf character\n", chars[i], ( __iscsymf( chars[i] ) ) ? "" : "not " ); } }
produces the output
Char A is a csymf character Char is not a csymf character Char _ is a csymf character Char 9 is not a csymf character Char + is not a csymf character
WATCOM
All (except DOS/PM)