homer512 icon

locale isalnum

homer512 | PRO | 04/23/15 04:35:04 PM UTC | 0 ⭐ | 722 👁️ | Never ⏰ | []
C |

580 B

|

None

|

0 👍

/

0 👎

#include <wctype.h>
/* iswalnum */
#include <locale.h>
/* using setlocale */
#include <stdlib.h>
/* using mbtowc */
 
 
int main(int argc, char** argv)
{
  char* word;
  wchar_t character;
  int consumed;
  if(argc < 2)
    return 1;
  /* enable system locale */
  setlocale(LC_ALL,"");
  /* decode one character at a time */
  for(word = argv[1]; (consumed = mbtowc(&character, word, MB_CUR_MAX)) > 0;
       word += consumed) {
    if(! iswalnum(character))
      return 1;
  }
  /* mbtowc indicated encoding error */
  if(consumed < 0)
    return 1;
  return 0;
}

Comments