iswctype

Indicates if a wide character has a specified property.

Format

#include  <wctype.h> (ISO C)

#include  <wchar.h> (XPG4)

int iswctype  (wint_t wc, wctype_t wc_prop);

Arguments

wc
An object of type wint_t. The value of wc must be representable as a valid wide-character code in the current locale, or must equal the value of the macro WEOF. If it has any other value, the behavior is undefined.
wc_prop
A valid property name in the current locale. This is set up by calling the wctype function.

Description

This function tests whether wc has the character- class property wc_prop. Set wc_prop by calling the wctype function.

See also wctype in this section.

Return Values
nonzero  If the character has the property wc_prop
If the character does not have the property wc_ prop

Example

    #include <locale.h>
    #include <wchar.h>
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <ctype.h>
    
    /* This test will set up the "upper" character class using wctype()  */
    /* and then verify whether the character 'a' and 'A' are             */
    /* members of this class                                             */
    
    #include <stdlib.h>
    
    main()
    {
    
    wchar_t w_char1, w_char2;
    wctype_t ret_val;
    
    char *char1 = "a";
    char *char2 = "A";
    
        ret_val = wctype("upper");
    
        /* Convert char1 to wide-character format - w_char1 */
    
        if (mbtowc(&w_char1, char1, 1) == -1)
            {
            perror("mbtowc");
            exit(EXIT_FAILURE);
            }
    
        if (iswctype((wint_t)w_char1, ret_val))
            printf("[%C] is a member of the character class upper\n",w_char1);
        else
            printf("[%C] is not a member of the character class upper\n",w_char1);
    
        /* Convert char2 to wide-character format - w_char2 */
    
        if (mbtowc(&w_char2, char2, 1) == -1)
            {
            perror("mbtowc");
            exit(EXIT_FAILURE);
            }
    
        if (iswctype((wint_t)w_char2, ret_val))
            printf("[%C] is a member of the character class upper\n",w_char2);
        else
            printf("[%C] is not a member of the character class upper\n",w_char2);
    
    }
    

    Running the example program produces the following result:

    [a] is not a member of the character class upper
    [A] is a member of the character class upper
    


Previous Page | Next Page | Table of Contents | Index