isprint <ctype.h> <cctype>

简介:

原文:http://www.cplusplus.com/reference/clibrary/cctype/isprint/

int isprint ( int c );
检查一个字符是否可打印


检查参数c是否是一个可打印字符。任何一个不是控制字符的字符都是一个可打印字符。


对于标准的ASCII字符表来说,控制字符是指那些ASCII 码在0x00 (NUL) 和 0x1f (US)之间的字符,加上0x7f (DEL)。因此,除下这些控制字符,其他的字符都是可打印字符。有些特定平台上的特定编译器可能会把扩展字符( 0x7f以上)定义为新增的控制字符。

除了空白字符 (例如 ' ')外,isgraph和isprint在相同条件下,返回值是一样的。对于空白字符,isprint检查的时候返回true,而isgraph检查的时候返回false。

想要得到不同的ctype函数在处理每个标准ANSII字符返回值的详细图表,请阅读参考<cctype>头文件。
在C++语言中,一个特定于语言环境模版版本的isprint函数存在于头文件<locale>。

参数
c
 待检查字符,被转换成一个整数或者EOF结束符。
 
返回值
 如果事实上c是一个可打印字符,返回值为非0(例如:true)。否则,返回值为0 (例如:false)。

实例

/* isprint example */
#include <stdio.h>
#include <ctype.h>
int main ()
{
  int i=0;
  char str[]="first line \n second line \n";
  while (isprint(str[i]))
  {
    putchar (str[i]);
    i++;
  }
  return 0;
}
这段代码会逐个字符打印直到检查到一个字符是不可打印的字符,然后退出while循环。在这里,仅仅第一行会被打印出来,因为第一行末尾的结束符('\n')是一个不可以打印的字符。


请参阅
iscntrl 检查字符是否是控制字符(函数)
isspace 检测字符是否为空白字符(函数)
isalnum 检查字符是否是字母或者数字(函数)


相关文章
|
存储 算法 C++
C++中的字符串操作&lt;cstring&gt;和&lt;string&gt;的区别
目录 目录 参考资料 字符串 cstring和string的区别在哪 string类的实现 注意不要盲目相信以下内容! 不要盲目相信以下内容! 不要盲目相信以下内容! (重要的事情说三遍),虽然以下内容也经过了我的验证,但是我的验证可能有错误的地方,欢迎大家留言告知。
1283 0
错误 1 Files 的值“&lt;&lt;&lt;&lt;&lt;&lt;&lt; .mine”无效。路径中具有非法字符。
Microsoft Visual Studio 2010项目编译的时候,提示如下错误: 错误 1 Files 的值“&lt;&lt;&lt;&lt;&lt;&lt;&lt; .mine”无效。路径中具有非法字符。 解决办法:在你的工程OBJ/DEBUG目录下,找到 工程名.csproj.FileListAbsolute.txt的文件打开并删除含有'&lt;&lt;&lt;&lt;&lt;&l
2251 0
实现string类的操作符重载 + = &gt; &lt; == != &gt;&gt; &lt;&lt;
<pre code_snippet_id="596931" snippet_file_name="blog_20150203_1_6205569" name="code" class="objc">//MyString.h #pragma once #include &lt;iostream&gt; using namespace std; class MyString { priva
1359 0