@node ispunct @section @code{ispunct} @findex ispunct POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9699919799/functions/ispunct.html} Gnulib module: ctype Portability problems fixed by Gnulib: @itemize @item This function cannot be called from plain inline or extern inline functions on some platforms: OS X 10.8. @end itemize Portability problems not fixed by Gnulib: @itemize @end itemize Note: This function's behaviour depends on the locale, but does not support the multibyte characters that occur in strings in locales with @code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales). There are five alternative APIs: @table @code @item c_ispunct This function operates in a locale independent way and returns true only for ASCII characters. It is provided by the Gnulib module @samp{c-ctype}. @item iswpunct This function operates in a locale dependent way, on wide characters. In order to use it, you first have to convert from multibyte to wide characters, using the @code{mbrtowc} function. It is provided by the Gnulib module @samp{wctype}. @item c32ispunct This function operates in a locale dependent way, on 32-bit wide characters. In order to use it, you first have to convert from multibyte to 32-bit wide characters, using the @code{mbrtoc32} function. It is provided by the Gnulib module @samp{c32ispunct}. @item mb_ispunct This function operates in a locale dependent way, on multibyte characters. It is provided by the Gnulib module @samp{mbchar}. @item uc_is_punct This function operates in a locale independent way, on Unicode characters. It is provided by the Gnulib module @samp{unictype/ctype-punct}. @end table