大宇私人领地伊甸园丨宁愿做了后悔,也不要错过后悔[www.mrdayu.com]
注册

24小时联系邮箱:[email protected]

所有文章
大宇私人伊甸园: 首页 > 所有文章 > 编程人生 > C/C++语言 > C标准库详解 > iscntrl函数详解


友情链接:


iscntrl函数详解

发布时间:2018/11/29 C标准库详解 标签iscntrl阅读:34

函数原型:

extern int iscntrl(int c);

头文件:

#include <ctype.h>

功能:

判断字符c是否为控制字符

说明:

当c在0x00-0x1F之间或等于0x7F(DEL)时,返回非零值,否则返回零。

Linux平台测试:

#include <stdio.h>
#include <ctype.h>

int main(){
        int c=0;
        printf("%x:%s\n",c,iscntrl(c)?"yes":"no");
        c='a';
        printf("%x:%s\n",c,iscntrl(c)?"yes":"no");
        c=0x0d;
        printf("%x:%s\n",c,iscntrl(c)?"yes":"no");
        c=0x7f;
        printf("%x:%s\n",c,iscntrl(c)?"yes":"no");
        return 0;
}

测试结果:

[[email protected] STDC]$ gcc stdc_iscntrl.c
[[email protected] STDC]$ ./a.out 
0:yes
61:no
d:yes
7f:yes

Windows平台测试:

#include <stdio.h>
#include <ctype.h>

int main(){
	int c = 0;
	printf("%x:%s\n", c, iscntrl(c) ? "yes" : "no");
	c = 'a';
	printf("%x:%s\n", c, iscntrl(c) ? "yes" : "no");
	c = 0x0d;
	printf("%x:%s\n", c, iscntrl(c) ? "yes" : "no");
	c = 0x7f;
	printf("%x:%s\n", c, iscntrl(c) ? "yes" : "no");
	getchar();
	return 0;
}

运行结果:

0:yes
61:no
d:yes
7f:yes

结论:

只要是0x00-0x1F之间或等于0x7F,结果就会返回一个非0值。否则返回0。

The bottom line, for me, is simple.

Let’s hope it doesn’t take 500 years for a discipline of testing to becomes the standard for software developers.

From:dayu

您好!请登录

合作网站快捷登录:
点击取消回复

已有0评论

    大宇博客

    点击这里给我发消息 点击这里给我发消息 点击这里给我发消息 点击这里给我发消息