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. access建立sql查询语句运行查询语句

    1.打开一个Access数据库文件 2.点击“创建”标签中的“查询设计”,会弹出一个“显示表”的对话框,点击“关闭”将其关闭 3.这时会有一个名为“查询*”的窗口,还不能输入SQL语句 4.点击左上角 ...

  2. Intellij IDEA如何在一个窗口同时打开多个Maven项目

    建立父目录,比如fatherProject,并将多个项目放入该父目录fatherProject下 File-Open...打开父目录fatherProject 引入pom.xml,打开Maven Pr ...

  3. day15(生成器send方法,递归,匿名函数,内置函数)

    一,复习 ''' 1.带参装饰器 - 自定义 | wraps def wrap(info) def outer1(func): from functools import wraps @wraps(f ...

  4. 使用Base64进行string的加密和解密

    //字符串转bytes var ebytes = System.Text.Encoding.Default.GetBytes(keyWord); //bytes进行base64加密 var strBa ...

  5. sql数据库 大小查询

    select * from sys.master_files where name='CODA_PRD_Catalog' 12416*8/1024=(m)

  6. Usboot V1.68版本

    V1.68版本,我的收藏之一 官方的介绍: 市面上现在大多数U盘都支持启动机器的功能,但是要制作启动型U盘,需要进入WIN98,现在很多人机器 上都没有98了吧,呵呵.为了做个启动盘,装一个98,多冤 ...

  7. centos绑定https

    1.百度云申请免费ssl证书 一年一申请 2. https://www.wosign .com /faq/faq-apache-https.htm 3.注意ssl.conf里面各个证书的顺序 证书路径 ...

  8. C#-MVC-★不同层之间的传值方式★

    方式一:form表单提交(一对一传值) 例如: view层代码: action - 数据提交到的服务端(如Home控制器下的Insert动作) method - 提交数据的方式(post或get) n ...

  9. v-bind、v-on 的缩写

    Vue中的缩写:v-bind.v-on v-bind 缩写:: 预期:any (with argument) | Object (without argument) 参数:attrOrProp (op ...

  10. Android Fragment向另一个Activity传值

    1.Fragment内: Intent intent=new Intent(getActivity(),ShowDataActivity.class); //参数1:Fragment所依存的Activ ...