<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
isalnum() 函數用於檢查所傳的字元是否是字母或者十進位制數位。它的函數原型如下:
_CRTIMP int __cdecl isalnum(int _C);
返回值為非零(真)表示引數c
是字母或者十進位制數位,返回值為零(假)表示引數c
既不是十進位制數位,也不是字母。
下面通過一個簡單的例子來演示它的用法。
#include <stdio.h> #include <ctype.h> 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() 函數可以同時檢測字母或者數位,如果要單獨檢測字母或者數位的的話,庫函數中還提供了專門的檢測函數isalpha 和 isdigit,他們的函數原型如下:
_CRTIMP int __cdecl isalpha(int _C); _CRTIMP int __cdecl isdigit(int _C);
將上面程式碼中的函數替換為這兩個函數。
#include <stdio.h> #include <ctype.h> 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 <stdio.h> #include <ctype.h> 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()詳解的文章就介紹到這了,更多相關C語言isalnum()和iscntrl()內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45