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等一系列函数的更多相关文章

  1. C 语言中 malloc、calloc、realloc 和free 函数的使用方法

    C标准函数库中,常见的堆上内存管理函数有malloc(), calloc(), recalloc(), free(). 之所以使用堆,是因为栈只能用来保存临时变量.局部变量和函数参数.在函数返回时,自 ...

  2. c语言中scanf()、printf()函数

    函数调用scanf(“%d”,  &weight) 包含两个参数:“%d” 和&weight.C用逗号来隔开函数调用中的多个参数: 但是printf()和scanf()函数比较特殊,其 ...

  3. C语言中:static与extern对变量和函数的作用

    1.两者对全局变量 static对全局变量,表示定义一个内部变量 extern对全局变量,表示声明一个外部变量 说明: 1.内部变量:定义的变量只能在本文件中访问,不能被其他文件访问. 2.不同文件中 ...

  4. 【转载】C语言中的undefined behavior/unspecified behavior - 序

    嗷嗷的话: 这都是一些细枝末节的东西,我想不做编译器的话,大部分都很难碰到.研究学习这些只是出于对C语言一种偏执狂. 写出来是为了找到和我一样的偏执狂. 在随后的的文章中,首先我写一写191种unde ...

  5. C语言中file文件指针概念及其操作 (转载)

    文件 文件的基本概念 所谓"文件"是指一组相关数据的有序集合. 这个数据集有一个名称,叫做文件名.实际上在前面的各章中我们已经多次使用了文件,例如源程序文件.目标文件.可执行文件. ...

  6. C语言中,头文件和源文件的关系(转)

    简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程: 1.预处理阶段 2.词法与语法分析阶段 3.编译阶段,首先编译成纯汇编语句, ...

  7. C 语言中 setjmp 和 longjmp

    在 C 语言中,我们不能使用 goto 语句来跳转到另一个函数中的某个 label 处:但提供了两个函数——setjmp 和 longjmp来完成这种类型的分支跳转.后面我们会看到这两个函数在处理异常 ...

  8. c语言中的scanf在java中应该怎么表达,Scanner类。

    1 java是面向对象的语言 它没有像C语言中的scanf()函数,但是它的类库中有含有scanf功能的函数 2 java.util包下有Scanner类 Scanner类的功能与scanf类似 3 ...

  9. C语言中do...while(0)的妙用(转载)

    转载来自:C语言中do...while(0)的妙用,感谢分享. 在linux内核代码中,经常看到do...while(0)的宏,do...while(0)有很多作用,下面举出几个: 1.避免goto语 ...

随机推荐

  1. JAVA设计模式---总述篇

    一.设计模式(Design Pattern): 1.设计模式的概念 是前辈们对代码开发经验的总结,是解决特定问题的一系列套路.它不是语法规定,而是一套用来提高代码可复用性.可维护性.可读性.稳健性以及 ...

  2. Kilani and the Game-吉拉尼的游戏 CodeForce#1105d 模拟 搜索

    题目链接:Kilani and the Game 题目原文 Kilani is playing a game with his friends. This game can be represente ...

  3. SpringBootSecurity学习(05)网页版登录内存中配置默认用户

    默认用户 前面的例子中我们使用的都是配置文件中配置好的默认用户: 除了可以配置账号密码,还可以在配置文件中配置角色: 这个角色是后面实现权限过滤的重要内容,后面会重点讨论. 在内存中配置默认用户 这样 ...

  4. (java实现)单链表

    什么是单链表 在了解单链表之前,你知道什么是链表吗?如果你不知道什么是链表,可以看看我的这篇博客<链表-LinkList> 单链表是链表的其中一种基本结构.一个最简单的结点结构如图所示,它 ...

  5. Maven 梳理 -多模块 vs 继承

    Maven提高篇系列之(一)——多模块 vs 继承   这是一个Maven提高篇的系列,包含有以下文章: Maven提高篇系列之(一)——多模块 vs 继承 Maven提高篇系列之(二)——配置Plu ...

  6. FILETIME类型到LARGE_INTEGER类型的转换

    核心编程第5版 245页到247页的讲到SetWaitableTimer函数的使用 其中提到 FILETIME类型到LARGE_INTEGER类型的转换问题,如下代码 //我们声明的局部变量 HAND ...

  7. 自定义TabLayout的Indicator

    最近项目要使用类似TabLayout的控件,其实我感觉就是TabLayout只是换了一个Indicator,先说一说TabLayout这是Android Support Design的控件要使用的同学 ...

  8. Redis系列---操作命令及数据类型

    本章将简单介绍下,Redis里面常用的数据类型以及我们常用到的一些命令,let's go 准备环境: Redis  详细见上一个章节 我们接下来操作的命令用的是Redis自带的客户端工具,在安装red ...

  9. C# 服务里面调用Python.exe 来执行python文件

    问题描述:在WCF服务里面通过调用python.exe来执行py文件,像下面这样py文件路径+参数,用空格隔开.会出现调用结果为空的现象 System.Diagnostics.ProcessStart ...

  10. [Scrapy] Some things about Scrapy

    1. Pause and resume a crawl Scrapy supports this functionality out of the box by providing > the ...