C++ 中的 iscntrl() 函数


C++ 中的 iscntrl() 函数用于检查某个字符是否为控制字符。此函数在 ctype.h 中进行了定义。

iscntrl() 函数的语法如下所示 −

int iscntrl ( int ch );

其中,ch 是需要检查的字符。

以下是一个说明了 iscntrl() 函数使用方法的程序,该程序用于计算字符串中的控制字符数量 −

示例

 实时演示

#include <iostream>
#include <ctype.h>

using namespace std;
int main() {
   char str[] = "Coding\tis\tfun\n";
   int i, count = 0;

   for(i=0; str[i]!='\0';i++) {
      if(iscntrl(str[i]))
      count++;
   }
   cout<<"Number of control characters in the string are "<<count;
   return 0;
}

输出

上述程序的输出如下所示 −

Number of control characters in the string are 3

在上述程序中,首先定义字符串。然后使用 for 循环检查字符串中的每个字符以查看它们是否为控制字符。如果它们是,则计数增加 1。最后,显示计数的值。以下代码段对此进行了说明 −

char str[] = "Coding\tis\tfun\n";
int i, count = 0;
for(i=0; str[i]!='\0';i++) {
   if(iscntrl(str[i]))
   count++;
}
cout<<"Number of control characters in the string are "<<count;

以下是一个演示 iscntrl() 函数的另一个程序。它指定给定字符是否为一个控制字符。该程序如下所示 −

示例

#include <iostream>
#include <ctype.h>

using namespace std;
int main() {
   char ch1 = 'A';
   char ch2 = '\n';

   if(iscntrl(ch1))
   cout<<"ch1 is a control character"<<endl;

   else
   cout<<"ch1 is not a control character"<<endl;

   if(iscntrl(ch2))
   cout<<"ch2 is a control character"<<endl;

   else
   cout<<"ch2 is not a control character"<<endl;
   return 0;
}

输出

上述程序的输出如下所示 −

ch1 is not a control character
ch2 is a control character

在上述程序中,定义了 ch1 和 ch2。然后使用 iscntrl() 检查它们是否为控制字符。以下代码段对此进行了说明 −

char ch1 = 'A';
char ch2 = '\n';

if(iscntrl(ch1))
cout<<"ch1 is a control character"<<endl;

else
cout<<"ch1 is not a control character"<<endl;

if(iscntrl(ch2))
cout<<"ch2 is a control character"<<endl;
else
cout<<"ch2 is not a control character"<<endl;

更新时间: 2020 年 6 月 25 日

98 次浏览

Kickstart Your 职业

通过完成本课程获得认证

开始
广告
© . All rights reserved.