C 标准库 - ctype.h之isalnum使用
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;
}
文章参考
- http://zh.cppreference.com/w/c/string/byte/isalnum
- http://www.cplusplus.com/reference/cctype/isalnum/
- http://www.runoob.com/cprogramming/c-function-isalnum.html
C 标准库 - ctype.h之isalnum使用的更多相关文章
- C 标准库 - ctype.h
C 标准库 - ctype.h This header declares a set of functions to classify and transform individual charact ...
- C标准库<ctype.h>实现
本文地址:http://www.cnblogs.com/archimedes/p/c-library-ctype.html,转载请注明源地址. 1.背景知识 ctype.h是C标准函数库中的头文件,定 ...
- C 标准库 - ctype.h之iscntrl 使用
iscntrl int iscntrl ( int c ); Check if character is a control character 检查给定字符是否为控制字符,即编码 0x00-0x1F ...
- C 标准库 - ctype.h之isalpha使用
isalpha int isalpha ( int c ); Checks whether c is an alphabetic letter. 检查给定字符是否字母字符,即是大写字母( ABCDEF ...
- C 标准库 - string.h
C 标准库 - string.h This header file defines several functions to manipulate C strings and arrays. stri ...
- C 标准库 - <assert.h>
C 标准库 - <assert.h> 简介 C 标准库的 assert.h头文件提供了一个名为 assert 的宏,它可用于验证程序做出的假设,并在假设为假时输出诊断消息. 已定义的宏 a ...
- C 标准库 - <stdarg.h>
C 标准库 - <stdarg.h> 简介 stdarg.h 头文件定义了一个变量类型 va_list 和三个宏,这三个宏可用于在参数个数未知(即参数个数可变)时获取函数中的参数. 可变参 ...
- C 标准库 - <signal.h>
C 标准库 - <signal.h> 简介 signal.h 头文件定义了一个变量类型 sig_atomic_t.两个函数调用和一些宏来处理程序执行期间报告的不同信号. 库变量 下面是头文 ...
- C 标准库 - <setjmp.h>
C 标准库 - <setjmp.h> 简介 setjmp.h 头文件定义了宏 setjmp().函数 longjmp() 和变量类型 jmp_buf,该变量类型会绕过正常的函数调用和返回规 ...
随机推荐
- 在ASP.NET Core2上操作MongoDB就是能这么的简便酷爽(自动完成分库分表)
NoSQL是泛指非关系型的数据库,现今在我们的项目中也多有使用,其独特的优点为我们的项目架构带来了不少亮点,而我们这里的主角(MongoDB)则是NoSQL数据库家族中的一种.事实上,NoSQL数据库 ...
- Java Been, EJB, POJO 之间的区别
Java Bean 是可复用的组件,对Java Bean并没有严格的规范,理论上讲,任何一个Java类都可以是一个Bean.但通常情况下,由于Java Bean是被容器所创建(如Tomcat)的,所以 ...
- (转)可以一同使用 DISTINCT 和 COUNT 关键词,来计算非重复结果的数目。
点击收看
- C# 依赖注入 & MEF
之前面试有问道依赖注入,因为一直是做客户端的发开发,没有接触这个,后边工作接触到了MEF,顺便熟悉一下依赖注入 详细的概念解释就不讲了,网上一大把,个人觉着依赖注入本质是为了解耦,方便扩展 依赖注入的 ...
- C++的一些知识点摘抄(创建基本类 高级类)
问:对象有多大? 答:对象占据的内存量取决于其成员变量的长度,类函数不占据为对象分配的内容. 有些编译器在内存中对齐变量,这导致2字节变量实际占用的内存多于2字节. 问:为何不应将所有成员数据声明为公 ...
- Tomcat绿色版启动"startup.bat"一闪问题的解决方法!
进入DOS窗口,运行"startup.bat",会出现错误提示,我是win7 64位,提示“JRE_HOME”设置不正确.于是进入环境变量配置,设置“JRE_HOME”项,随后保存 ...
- iOS开发常见无法分类的小问题
iOS去除api过期警告提示
- FusionCharts的使用方法 - 公司所用的flash式的图像统计工具
我们公司一直用这个图表统计, 最近整理了一下相关文档,提供大家学习. 首先可以看看 http://www.cnblogs.com/xuhongfei/archive/2013/04/12/301688 ...
- html页面pc显示正常,在手机端适配也可以看整个页面
<meta name="viewport" content="width=1250,initial-scale=0,maximum-scale=2"/&g ...
- “全栈2019”Java异常第十五章:异常链详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...