千家信息网

C语言字符函数isalnum()和iscntrl()有什么用

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,这篇文章主要介绍C语言字符函数isalnum()和iscntrl()有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!isalnum() 函数用于检查所传的字符是否是字母或
千家信息网最后更新 2024年09月22日C语言字符函数isalnum()和iscntrl()有什么用

这篇文章主要介绍C语言字符函数isalnum()和iscntrl()有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

isalnum() 函数用于检查所传的字符是否是字母或者十进制数字。它的函数原型如下:

  _CRTIMP int __cdecl isalnum(int _C);

返回值为非零(真)表示参数c是字母或者十进制数字,返回值为零(假)表示参数c既不是十进制数字,也不是字母。

下面通过一个简单的例子来演示它的用法。

#include #include int main(){   int var1 = 'a';   int var2 = '8';   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 );   }       return(0);}

  分别定义4个变量,一个字母,一个数字,一个制表符,一个空字符,输出结果如下:

前两个变量返回值为真,后两个变量返回值为假。

isalnum() 函数可以同时检测字母或者数字,如果要单独检测字母或者数字的的话,库函数中还提供了专门的检测函数isalphaisdigit,他们的函数原型如下:

  _CRTIMP int __cdecl isalpha(int _C);  _CRTIMP int __cdecl isdigit(int _C);

将上面代码中的函数替换为这两个函数。

#include #include int main(){   int var1 = 'a';   int var2 = '8';      if( isalpha(var1) )   {      printf("var1 = |%c| 是字母\n", var1 );   }   else   {      printf("var1 = |%c| 不是字母\n", var1 );   }         if( isdigit(var2) )   {      printf("var2 = |%c| 是数字\n", var2 );   }   else   {      printf("var2 = |%c| 不是数字\n", var2 );   }      return(0);}

  运行结果如下:

C语言标准库里面还提供了控制字符检测函数iscntrl

所谓 "控制字符"是指那些具有某种特殊功能、不会显示在屏幕上、不会占用字符位置的特殊字符。在ASCII码表中,前32个字符就是控制字符。

控制字符检测函数iscntrl原型如下:

     _CRTIMP int __cdecl iscntrl(int _C);

如果 c 是一个控制字符,则该函数返回非零值,否则返回 0。

下面通过一段简单的代码演示它的用法。

#include #include int main(){   int i = 0, j = 0;   char str1[] = "abc \a def \t gh";   char str2[] = "123 \n 456";     /* 输出字符串,直到控制字符 \a */   while( !iscntrl(str1[i]) )    {      putchar(str1[i]);      i++;   }     /* 输出字符串,直到控制字符 \n */   while( !iscntrl(str2[j]) )    {      putchar(str2[j]);      j++;   }      return(0);}

定义两个字符串,中间有控制字符,然后打印字符串的时候检测字符是否为控制字符,如果是控制字符就结束打印。输出结果如下:

;同输出结果可以看到只打印了控制符前面的字符。

与控制字符相对的就是可打印字符,可打印字符是指那些会显示在屏幕上、会占用字符位置的"普通"字符。在ASCII码表中编码32-127的字符都是可打印字符。可打印字符就是经常用到的数字、字母、符号等这些在屏幕上可以看见的字符。

以上是"C语言字符函数isalnum()和iscntrl()有什么用"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

字符 字母 数字 函数 控制 检测 输出 两个 字符串 结果 语言 十进制 原型 变量 就是 屏幕 十进 特殊 代码 位置 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 计算机软件开发企业开票 h3c设置虚拟服务器 网络技术与数字传媒哪个好 服务器地址冲突 服务器断电了怎么知道 防止服务器80端口被扫描 三级网络技术考试题库激活码 数据库查询表格中的日期格式 核对数据库中的数据 服务器管理软件+网页 静安区品质数据库服务商报价行情 数据库的主从复制有什么技术 大学生违反网络安全被叫写检讨 支付宝网络安全轩辕 网络安全工程师考试安排 网络安全行业盛会中国参展企业 激活服务器不可以用 服务器虚拟化介绍 拼拼有礼软件开发者信息 拱墅区 软件开发公司 网络安全警示教育培训情况 网络安全与技术是干嘛的 主机是怎么找到代理服务器 企业管理软件开发排行榜 CRM软件开发企业有哪些 台式服务器是什么意思 广东供应服务器散热风扇云服务器 湖南佰市行互联网科技有限公司 互联网保险和保险科技 网络安全类自媒体号
0