ispunct()

Test a character to see if it's any punctuation character

Synopsis:

#include <ctype.h>

int ispunct( int c );

Arguments:

c
The character you want to test. This must be representable as an unsigned char or be EOF; the behavior for other values is undefined.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The ispunct() function tests for any punctuation character such as a comma (,) or a period (.).

Returns:

Nonzero if c is punctuation; otherwise, zero.

Examples:

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

char the_chars[] = { 'A', '!', '.', ',', ':', ';' };

#define SIZE sizeof( the_chars ) / sizeof( char )

int main( void )
{
    int i;

    for( i = 0; i < SIZE; i++ ) {
        if( ispunct( the_chars[i] ) ) {
            printf( "Char %c is a punctuation character\n",
                the_chars[i] );
        } else {
            printf( "Char %c is not a punctuation character\n",
                the_chars[i] );
        }
    }
    
    return EXIT_SUCCESS;
}

produces the output:

Char A is not a punctuation character
Char ! is a punctuation character
Char . is a punctuation character
Char , is a punctuation character
Char : is a punctuation character
Char ; is a punctuation character

Classification:

ANSI, POSIX 1003.1

Safety:  
Cancellation point No
Interrupt handler Yes
Signal handler Yes
Thread Yes