Check if character is a punctuation character
Checks whether c is a punctuation character.
The standard "C" locale considers punctuation characters all graphic characters (as in isgraph) that are not alphanumeric (as in isalnum).
Other locales may consider a different selection of characters as punctuation characters, but in any case they are isgraph but not isalnum.
For a detailed chart on what the different ctype functions return for each character of the standard ANSII character set, see the reference for the <cctype> header.
In C++, a locale-specific template version of this function (ispunct) exists in header <locale>.
- Character to be checked, casted to an int, or EOF.
A value different from zero (i.e., true) if indeed c is a punctuation character. Zero (i.e., false) otherwise.
/* ispunct example */
int main ()
char str="Hello, welcome!";
if (ispunct(str[i])) cx++;
printf ("Sentence contains %d punctuation characters.\n", cx);
Sentence contains 2 punctuation characters.
- Check if character has graphical representation (function)
- Check if character is a control character (function)