C语言学习:简单了解一下ctype.h
简介:
字符处理库函数提供了一系列对ASCII编码的字符数据进行测试和处理的函数,每个函数都接受一个整形数据作为参数或者用文件的结束符作为参数。整个处理的过程也是将自出作为整数来处理。本文主要简单介绍下其中比较常用的一些函数
提示:
博客:章飞_906285288
博客地址:http://blog.csdn.net/qq_29924041
常用的一些函数列表:
函数 | 作用 |
---|---|
int isalnum(c) | 判断是否是数字或者字母 |
int isalpha(c) | 判断是否是字母 |
int _iscsym(c) | 判断是否是数字,字母或者下划线 |
int _iscsymf(c) | 判断是否是字母,下划线 |
int isdigit(c) | 判断是否是十进制的数字 |
int islower(c) | 判断是否是小写字母 |
int isupper(c) | 判断是否是大写字母 |
int ispunct(c) | 判断字符是否是标点符号 |
int isspace(c) | 判断是否是空格 |
int _toascii(c) | 将字符转换成ascii代码 |
int toupper(c) | 将字符转换成大写字符 |
int tolower(c) | 将字符转换成小写字符 |
int isgrapha(c) | 检查c是否为可显示字符其ASCII码在0x21到0x7E之间),不包括空格 |
int iscntrl(c) | 检查ch是否控制字符(其ASCII码在0和0x1F之间,数值为 0-31) |
int isprint(c) | 检查ch是否是可打印字符(包括空格),其ASCII码在0x20到0x7E之间 |
简单的一个测试代码
/*
* ===========================================================================
*
* Filename: ctypedemo.c
* Description:
* Version: 1.0
* Created: 2017年07月23日 20时06分06秒
* Revision: none
* Compiler: gcc
* Author: (),
* Company:
*
* ===========================================================================
*/
#include<stdio.h>
#include<stdlib.h>
#include<ctype.h>
#include<string.h>
void out(char* c){
//判断是数字或者字母
if(isalnum(*c)){
printf("c:%c ",*c);
if(isalpha(*c)){ //判断是否是字母
printf("c is alpha\n");
if(islower(*c)){//判断是否为小写字母,将小写字母大写
*c = toupper(*c);
}else if(isupper(*c)){ //判断是否为大写字母,讲大写字母小写
*c = tolower(*c);
}else {
}
}else {
}
}else if(ispunct(*c)){ //判断是否是标点符号
printf("%c\n",*c);
}else if(isspace(*c)){ //判断是否是空格
printf("%c\n",*c);
}else{
printf("other\n");
}
}
int main(int argc,char *argv[]){
char c_array[] = "Hello world,You are __ No.1";
int c_length = sizeof(c_array);
printf("length:%d\n",c_length);
int i = 0;
for(i=0 ; i< c_length - 1 ; i++){
out(&c_array[i]);
}
printf("a_array:%s\n",c_array);
return 0;
}
代码可以直接run的