当前位置: 代码迷 >> 综合 >> C++ | 字符函数库 cctype
  详细解决方案

C++ | 字符函数库 cctype

热度:34   发布时间:2023-12-28 01:41:36.0

1 基本函数

C++从C继承了与字符相关的函数软件包,可以简化诸如是否为大小写字母、数字、空格和标点符号等工作,函数原型在头文件 cctype 中定义。

函数名称 含义及返回值
isalpha() 参数是字母,返回true
isdigit() 参数是数字(0~9),返回true
islower() 参数是小写字母,返回true
isupper() 参数是大写字母,返回true
ispunct() 参数是标点符号,返回true
isspace() 参数是空白字符(空格、换行、回车、水平制表等),返回true
isxdigit() 参数是十六进制,返回true
tolower() 参数是大写字母,则返回小写字母,否则返回该参数
toupper() 参数是小写字母,则返回大写字母,否则返回该参数

2 实例应用

#include <iostream>
#include <cctype>
int main()
{using namespace std;cout << "Enter text for analysis, and type @"" to terminate input.\n";char ch;  int whitespace = 0;int digits = 0;int chars = 0;int punct = 0;int others = 0;cin.get(ch);                // get first characterwhile (ch != '@')            // test for sentinel{if(isalpha(ch))         // is it an alphabetic character?chars++;else if(isspace(ch))    // is it a whitespace character?whitespace++;else if(isdigit(ch))    // is it a digit?digits++;else if(ispunct(ch))    // is it punctuation?punct++;elseothers++;cin.get(ch);            // get next character}cout << chars << " letters, "<< whitespace << " whitespace, "<< digits << " digits, "<< punct << " punctuations, "<< others << " others.\n";return 0; 
}