isalnum

int isalnum ( int c );
  • Checks whether c is either a decimal digit or an uppercase or lowercase letter.
  • 检查给定的字符是否为当前 C 本地环境所分类的字母数字字符。在默认本地环境中,下列字符为字母数字:

    - 数字( 0123456789 )

    - 大写字母( ABCDEFGHIJKLMNOPQRSTUVWXYZ )

    - 小写字母( abcdefghijklmnopqrstuvwxyz )

    若 c 的值不能表示为 unsigned char 且不等于 EOF ,则行为未定义。

Parameters

c

  • Character to be checked, casted as an int, or EOF.
  • c - 要分类的字符

Return Value

  • A value different from zero (i.e., true) if indeed c is either a digit or a letter. Zero (i.e., false) otherwise.
  • 若字符为字母数字字符,则为非零,否则为 0 。

Example

//
// Created by zhangrongxiang on 2018/1/31 13:33
// File isalnum
// #include <stdio.h>
#include <ctype.h>
#include <locale.h> /*isalnum*/ int main(void) { ///////////////////////////////////////////////////////////////////////////////////
unsigned char c = '\xdf'; // ISO-8859-1 中的德文字母 ß
printf("isalnum('\\xdf') in default C locale returned %d\n", c, !!isalnum(c));
if (setlocale(LC_CTYPE, "de_DE.iso88591"))
printf("isalnum('\\xdf') in ISO-8859-1 locale returned %d\n", !!isalnum(c));
if (setlocale(LC_CTYPE, "en_US.UTF-8"))
//isalnum('\xdf') in UTF-8 locale returned 0
printf("isalnum('\\xdf') in UTF-8 locale returned %d\n", !!isalnum(c)); ///////////////////////////////////////////////////////////////////////////////////
int var1 = 'd';
int var2 = '2';
int var3 = '\t';
int var4 = ' '; if (isalnum(var1)) {
printf("var1 = |%c| 是字母数字\n", var1);
} else {
printf("var1 = |%c| 不是字母数字\n", var1);
}
if (isalnum(var2)) {
printf("var2 = |%c| 是字母数字\n", var2);
} else {
printf("var2 = |%c| 不是字母数字\n", var2);
}
if (isalnum(var3)) {
printf("var3 = |%c| 是字母数字\n", var3);
} else {
printf("var3 = |%c| 不是字母数字\n", var3);
}
if (isalnum(var4)) {
printf("var4 = |%c| 是字母数字\n", var4);
} else {
printf("var4 = |%c| 不是字母数字\n", var4);
}
// var1 = |d| 是字母数字
// var2 = |2| 是字母数字
// var3 = | | 不是字母数字
// var4 = | | 不是字母数字 ///////////////////////////////////////////////////////////////////////////////////
int i;
char str[] = "c3po...";
i = 0;
while (isalnum(str[i])) i++;
//The first 4 characters are alphanumeric.
printf("The first %d characters are alphanumeric.\n", i);
return 0; }

文章参考

C 标准库 - ctype.h之isalnum使用的更多相关文章

  1. C 标准库 - ctype.h

    C 标准库 - ctype.h This header declares a set of functions to classify and transform individual charact ...

  2. C标准库<ctype.h>实现

    本文地址:http://www.cnblogs.com/archimedes/p/c-library-ctype.html,转载请注明源地址. 1.背景知识 ctype.h是C标准函数库中的头文件,定 ...

  3. C 标准库 - ctype.h之iscntrl 使用

    iscntrl int iscntrl ( int c ); Check if character is a control character 检查给定字符是否为控制字符,即编码 0x00-0x1F ...

  4. C 标准库 - ctype.h之isalpha使用

    isalpha int isalpha ( int c ); Checks whether c is an alphabetic letter. 检查给定字符是否字母字符,即是大写字母( ABCDEF ...

  5. C 标准库 - string.h

    C 标准库 - string.h This header file defines several functions to manipulate C strings and arrays. stri ...

  6. C 标准库 - <assert.h>

    C 标准库 - <assert.h> 简介 C 标准库的 assert.h头文件提供了一个名为 assert 的宏,它可用于验证程序做出的假设,并在假设为假时输出诊断消息. 已定义的宏 a ...

  7. C 标准库 - <stdarg.h>

    C 标准库 - <stdarg.h> 简介 stdarg.h 头文件定义了一个变量类型 va_list 和三个宏,这三个宏可用于在参数个数未知(即参数个数可变)时获取函数中的参数. 可变参 ...

  8. C 标准库 - <signal.h>

    C 标准库 - <signal.h> 简介 signal.h 头文件定义了一个变量类型 sig_atomic_t.两个函数调用和一些宏来处理程序执行期间报告的不同信号. 库变量 下面是头文 ...

  9. C 标准库 - <setjmp.h>

    C 标准库 - <setjmp.h> 简介 setjmp.h 头文件定义了宏 setjmp().函数 longjmp() 和变量类型 jmp_buf,该变量类型会绕过正常的函数调用和返回规 ...

随机推荐

  1. Postgres-XL9.5r1.6 搭建

    Postgres-XL9.5r1.6 安装部署1,环境准备 关闭防护墙 关闭selinux 下载依赖 yum install -y flex bison readline-devel zlib-dev ...

  2. C# 图书整理

    C#测试驱动开发C#设计模式C#高级编程单元测试之道C#版:使用Nunit 继续添加......

  3. C#学习(1):类型约束

    where T : class泛型类型约束 类型参数约束,.NET支持的类型参数约束有以下五种: where T : struct | T必须是一个结构类型 where T : class T必须是一 ...

  4. leetcode 字符串转整数(atoi)

    实现atoi,将字符串转为整数. 在找到第一个非空字符之前,需要移除掉字符串中的空格字符.如果第一个非空字符是正号或负号,选取该符号,并将其与后面尽可能多的连续的数字组合起来,这部分字符即为整数的值. ...

  5. c# 利用t4模板,自动生成Model类

    我们在用ORM(比如dapper)的时候,很多时候都需要自己写Model层(当然也有很多orm框架自带了这种功能,比如ef),特别是表里字段比较多的时候,一个Model要写半天,而且Model如果用于 ...

  6. c#设计模式之策略者模式(Strategy Pattern)

    场景出发 假设存在如下游戏场景: 1:角色可以装备木剑,铁剑,魔剑3种装备,分别对怪物造成20HP,50HP,100HP伤害(未佩戴装备则无法攻击); 2角色可以向怪物攻击,一次攻击后损失角色所佩戴装 ...

  7. 记开发个人图书收藏清单小程序开发(五)Web开发

    决定先开发Web端试试. 新增Web应用: 选择ASP.NET Core Web Application,填写好Name和Location,然后点击OK. 注意红框标出来的,基于.NET Core 2 ...

  8. springmvc 通过@ResponseBody 返回json的中文乱码解决方案2个

    1.方法上面的RequestMapping要加上红色的部分.   @ResponseBody     @RequestMapping(value = "/search", prod ...

  9. LOJ#6044. 「雅礼集训 2017 Day8」共(Prufer序列)

    题面 传送门 题解 答案就是\(S(n-k,k)\times {n-1\choose k-1}\) 其中\(S(n,m)\)表示左边\(n\)个点,右边\(m\)个点的完全二分图的生成树个数,它的值为 ...

  10. PHP中define()和dirname(__FILE__)

    1,define() 函数定义一个常量.常量类似变量,不同之处在于: (1)在设定以后,常量的值无法更改 (2)常量名不需要开头的美元符号 ($) (3)作用域不影响对常量的访问 (4)常量值只能是字 ...