C语言中的isalpha,isdigit,islower,isupper等一系列函数
TITLE:c语言中的isalpha,isdigit,islower,isupper等一系列函数
已经全部验证检查,无任何错误
isalnum(测试字符是否为英文或数字)
相关函数 isalpha,isdigit,islower,isupper
表头文件 #include<ctype.h>
定义函数 int islower(int c)
函数说明 检查参数c是否为小写英文字母。
返回值 若参数c为小写英文字母,则返回TRUE,否则返回NULL(0)。
附加说明 此为宏定义,非真正函数。
范例
#include<ctype.h>
#include<stdio.h>
int main()
{
char str[]="c123@#FDsP[e?";
int i;
for(i=0;str[i]!=0;i++)
if(islower(str[i]))
printf("%c is a lower-case character\n",str[i]);
}
执行
c is a lower-case character
s is a lower-case character
e is a lower-case character
isprint(测试字符是(否为可打印字符)
相关函数 isgraph
表头文件 #include<ctype.h>
定义函数 int isprint(int c);
函数说明 检查参数c是否为可打印字符,若c所对映的ASCII码可打印,其中包含空格字符,则返回TRUE。
返回值 若参数c为可打印字符,则返回TRUE,否则返回NULL(0)。
附加说明 此为宏定义,非真正函数。
范例
/* 判断str字符串中哪些为可打印字符包含空格字符*/
#include<ctype.h>
#include<stdio.h> int main()
{
char str[]="a5 @;";
int i;
for(i=0;str[i]!=0;i++)
if(isprint(str[i]))
printf("str[%d] is printable character:%c\n",i,str[i]);
}
执行
str[0] is printable character:a
str[1] is printable character:5
str[2] is printable character:
str[3] is printable character:@
str[4] is printable character:;
isspace(测试字符是否为空格字符)
相关函数 isgraph
表头文件 #include<ctype.h>
定义函数 int isspace(int c)
函数说明 检查参数c是否为空格字符,也就是判断是否为空格('')、定位字符('\t')、CR('\r')、换行('\n')、垂直定位字符('\v')或翻页('\f')的情况。
返回值 若参数c为空格字符,则返回TRUE,否则返回NULL(0)。
附加说明 此为宏定义,非真正函数。
范例
/*将字符串str[]中内含的空格字符找出,并显示空格字符的ASCII码*/
#include <ctype.h>
#include<stdio.h> int main()
{
char *str="123c @# FD\tsP[e?\n";
int i;
for(i=0;str[i]!=0;i++)
if(isspace(str[i]))
printf("str[%d] is a white-space character:%d\n",i,str[i]);
}
执行
str[4] is a white-space character:32
str[7] is a white-space character:32
str[10] is a white-space character:9 /* \t */
str[16] is a white-space character:10 /* \t */
ispunct(测试字符是否为标点符号或特殊符号)
相关函数 isspace,isdigit,isalpha
表头文件 #inlude<ctype.h>
定义函数 int ispunct(int c)
函数说明 检查参数c是否为标点符号或特殊符号。返回TRUE也就是代表参数c为非空格、非数字和非英文字母。
返回值 v若参数c为标点符号或特殊符号,则返回TRUE,否则返回NULL(0)。
附加说明 此为宏定义,非真正函数。
范例
/*列出字符串str中的标点符号或特殊符号*/
#include <ctype.h>
#include<stdio.h> int main()
{
char str[]="123c@ #FDsP[e?";
int i;
for(i=0;str[i]!=0;i++)
if(ispunct(str[i]))
printf("%c\n",str[i]);
}
执行
@
#
[
?
isupper(测试字符是否为大写英文字母)
相关函数 isalpha,islower
表头文件 #include<ctype.h>
定义函数 int isupper(int c)
函数说明 检查参数c是否为大写英文字母。
返回值 若参数c为大写英文字母,则返回TRUE,否则返回NULL(0)。
附加说明 此为宏定义,非真正函数。
范例
/*找出字符串str中为大写英文字母的字符*/
#include <ctype.h>
#include<stdio.h> int main()
{
char str[]="123c@#FDsP[e?";
int i;
for(i=0;str[i]!=0;i++)
if(isupper(str[i]))
printf("%c is an uppercase character\n",str[i]);
}
执行
F is an uppercase character
D is an uppercase character
P is an uppercase character
isxdigit(测试字符是否为16进制数字)
相关函数 isalnum,isdigit
表头文件 #include<ctype.h>
定义函数 int isxdigit (int c)
函数说明 检查参数c是否为16进制数字,只要c为下列其中一个情况则返回TRUE。16进制数字:0123456789ABCDEF。
返回值 若参数c为16进制数字,则返回TRUE,否则返回NULL(0)。
附加说明 此为宏定义,非真正函数。
范例
/*找出字符串str中为十六进制数字的字符*/
#include <ctype.h>
#include<stdio.h> int main()
{
char str[]="123c@#FDsP[e?";
int i;
for(i=0;str[i]!=0;i++)
if(isxdigit(str[i]))
printf("%c is a hexadecimal digits\n",str[i]);
}
执行
1 is a hexadecimal digits
2 is a hexadecimal digits
3 is a hexadecimal digits
c is a hexadecimal digits
F is a hexadecimal digits
D is a hexadecimal digits
e is a hexadecimal digits
C语言中的isalpha,isdigit,islower,isupper等一系列函数的更多相关文章
- C 语言中 malloc、calloc、realloc 和free 函数的使用方法
C标准函数库中,常见的堆上内存管理函数有malloc(), calloc(), recalloc(), free(). 之所以使用堆,是因为栈只能用来保存临时变量.局部变量和函数参数.在函数返回时,自 ...
- c语言中scanf()、printf()函数
函数调用scanf(“%d”, &weight) 包含两个参数:“%d” 和&weight.C用逗号来隔开函数调用中的多个参数: 但是printf()和scanf()函数比较特殊,其 ...
- C语言中:static与extern对变量和函数的作用
1.两者对全局变量 static对全局变量,表示定义一个内部变量 extern对全局变量,表示声明一个外部变量 说明: 1.内部变量:定义的变量只能在本文件中访问,不能被其他文件访问. 2.不同文件中 ...
- 【转载】C语言中的undefined behavior/unspecified behavior - 序
嗷嗷的话: 这都是一些细枝末节的东西,我想不做编译器的话,大部分都很难碰到.研究学习这些只是出于对C语言一种偏执狂. 写出来是为了找到和我一样的偏执狂. 在随后的的文章中,首先我写一写191种unde ...
- C语言中file文件指针概念及其操作 (转载)
文件 文件的基本概念 所谓"文件"是指一组相关数据的有序集合. 这个数据集有一个名称,叫做文件名.实际上在前面的各章中我们已经多次使用了文件,例如源程序文件.目标文件.可执行文件. ...
- C语言中,头文件和源文件的关系(转)
简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程: 1.预处理阶段 2.词法与语法分析阶段 3.编译阶段,首先编译成纯汇编语句, ...
- C 语言中 setjmp 和 longjmp
在 C 语言中,我们不能使用 goto 语句来跳转到另一个函数中的某个 label 处:但提供了两个函数——setjmp 和 longjmp来完成这种类型的分支跳转.后面我们会看到这两个函数在处理异常 ...
- c语言中的scanf在java中应该怎么表达,Scanner类。
1 java是面向对象的语言 它没有像C语言中的scanf()函数,但是它的类库中有含有scanf功能的函数 2 java.util包下有Scanner类 Scanner类的功能与scanf类似 3 ...
- C语言中do...while(0)的妙用(转载)
转载来自:C语言中do...while(0)的妙用,感谢分享. 在linux内核代码中,经常看到do...while(0)的宏,do...while(0)有很多作用,下面举出几个: 1.避免goto语 ...
随机推荐
- (1)安装elastic6.1.3及插件kibana,x-pack,essql,head,bigdesk,cerebro,ik
1.安装环境及程序版本 操作系统: centos6.7 jdk: 1.8.0_102 elastic: 1.6.3 kibana: 1.6.3 x-pack: 1.6.3 es-sql: 1.6.3 ...
- Ubuntu18.04直接安装python3.7或者升级自带的python3.6版本之后导致终端无法打开的解决办法
安装ptyhon3.7 sudo apt-get update sudo apt-get install python3.7 安装成后的目录在/usr/bin/python3.7,同时将其设置成默认 ...
- Jmeter日记,很乱很随意
这个笔记是写给自己看的,很乱很随意,可能以后自己都看不懂.哈哈 Jmeter两种录制方式: 1使用badboy 2.使用代理 浏览器设置代理 参数化 随机参数化 插件的使用 官网下载和说明https: ...
- Java 基础篇之类与对象
类与对象 类.对象和引用的关系 类和对象的关系 类是对象的模版,对象是类的一个实例,一个类可以有很多对象 一个Java程序中类名相同的类只能有一个,也就是类型不会重名 一个对象只能根据一个类来创建 引 ...
- 基于Docker搭建大数据集群(七)Hbase部署
基于Docker搭建大数据集群(七)Hbase搭建 一.安装包准备 Hbase官网下载 微云下载 | 在 tar 目录下 二.版本兼容 三.角色分配 节点 Master Regionserver cl ...
- 23种设计模式之代理模式(Proxy Pattern)
在软件开发过程中,有些对象有时候会由于网络或其他的障碍,以至于不能够或者不能直接访问到这些对象,如果直接访问对象给系统带来不必要的复杂性,这时候可以在客户端和目标对象之间增加一层中间层,让代理对象代替 ...
- Mycat 配置文件server.xml
server.xml 几乎保存了所有 mycat 需要的系统配置信息. 1.system 标签: 该标签内嵌套的所有 property 标签都与系统配置有关. charset 属性: 该属性用于字符集 ...
- Shell之StdI/O和Pipe
目录 Shell之StdI/O和Pipe 参考 StdI/O重定向 Pipe 常用组合 Shell之StdI/O和Pipe
- maven突然报大量package does not exist(包不存在)问题
遇到个问题,不知道原因,虽然已解决,但是扔不知道为什么,希望有大神帮忙解答下~~~不胜感激~~~ 国庆假期回来后,小伙伴发布测试服务器版本忽然发现报错,我咨询IT管理组近期并没有对服务器配置和权限做调 ...
- iOS性能优化-预排版
参考地址:https://blog.ibireme.com/2015/11/12/smooth_user_interfaces_for_ios/ 前面一篇说了异步绘制文字,异步渲染图片,这篇主要是预排 ...