【C++】学习笔记二十三——字符函数库cctype

原创 2017年01月03日 21:51:40

字符函数库cctype

在头文件cctype(ctype.h)中定义了一些函数原型,可以简化输入确定字符是否为大写字母、数字、标点符号等工作。
例如:
如果ch是一个字母,则isalpha(ch)函数返回一个非零值,否则返回0;
如果ch是一个标点符号,则ispunct(ch)函数返回非零值,否则返回0;
(这些函数的返回类型为int,而不是bool,但通常bool转换让我们能够将它们视为bool类型)

程序6.8

#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);
    while (ch != '@')
    {
        if (isalpha(ch))
            chars++;
        else if (isspace(ch))
            whitespace++;
        else if (isdigit(ch))
            digits++;
        else if (ispunct(ch))
            punct++;
        else
            others++;
        cin.get(ch);
    }
    cout << chars << " letters, "
        << whitespace << " whitespace, "
        << digits << " digits, "
        << punct << " punctuations, "
        << others << " others.\n";
    system("pause");
    return 0;
}

下面是该程序的运行情况,注意,空白字符计数包括换行符:
这里写图片描述

下表列出了cctype中的字符函数:

函数名称 返回值
isalnum() 如果参数是字母数字,即字母或数字,该函数返回true
isalpha() 如果参数是字母,该函数返回true
iscntrl() 如果参数是控制字符,该函数返回true
isdigit() 如果参数是数字(0~9),该函数返回true
isgraph() 如果参数是除空格之外的打印字符,该函数返回true
islower() 如果参数是小写字母,该函数返回true
isprint() 如果参数是打印字符(包括空格),该函数返回true
ispunct() 如果参数是标点符号,该函数返回true
isspace() 如果参数是标准空白字符,如空格、换行符、回车、水平制表符或者垂直制表符,该函数返回true
isupper() 如果参数是大写字母,该函数返回true
isxdigit() 如果参数是十六进制数字,即0~9、a~f或A~F,该函数返回true
tolower() 如果参数是大写字符,该函数返回其小写,否则返回该参数
toupper() 如果参数是小写字符,该函数返回其大写,否则返回该参数
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

【C++学习笔记】字符函数库cctype

cctype中的字符函数     isalnum() 如果参数是字母数字,即字母或数字,该函数返回true isalpht() 如果参数是字母,该函数返回true iscntrl(...

[C++ Primer Plus]学习笔记 --字符函数库cctype

c++中应该是#include c中应该是#include 以下为字符函数库中常用的函数:函数名称 返回值 isalnum() 如果参数是字母数字,即字母或数字,该函数返回true isalpha...

C++ Primer Plus学习笔记 第六章 cctype字符函数库 switch语句 continue和break语句 基本文件输入输出

声明:本文整理自《C++ Primer Plus》 1.错误防范。 将表达式mynumber==3反转为3==mynumber,以此来捕获将相等运算符写成赋值运算符。 2.&&运算符 &&...

C++ 字符函数库cctype

C++从C语言继承了一个与字符相关的函数软件包,可以简化诸如确定字符是否为大写字母、数字、标点符号等工作,这些函数的原型在头文件cctype(老式的风格为ctype.h)中定义的。 #######...

(八十四)字符函数库cctype

cctype实际上就是一个函数库,他包括多个函数,在调用这些函数的时候,他会自动帮你判断,是否是该函数要求的类型,如果是,返回一个非0 int值(并非固定的)——但可以理解为true值(因为bool后...

STM32学习笔记——使用函数库编程控制GPIO口输出

使用函数库编程控制GPIO口输出 看了网上许多人的代码以及各类开发板所带的例程,大多数使用的都是官方发布的函数库来编程,通过查询后发现,使用函数库来编程可以简化开发过程,并不需要追溯到各个寄存器,通...
  • SahPah
  • SahPah
  • 2014-08-13 12:04
  • 2330

嵌入式学习笔记5-静态函数库设计示例

本文基于国嵌的视频教程以及Red Hat Enterprise Linux Server (Release 6.3)系统,总结一下在Linux系统下关于动态、静态函数库的设计。  Linux应用序设...

LUA学习笔记--基本函数库

基本函数库为Lua内置的函数库,不需要额外装载 assert (v [, message]) 功能:相当于C的断言, 参数: v:当表达式v为nil或false将触发错误, mess...

lua学习笔记之四(Lua中的基本函数库)

Lua中的基本函数库 表1   基本函数库 功能 参数 备注 assert(v[,mess age])                  相当于C的断言 v:...

java 从零开始,学习笔记之基础入门<SQL_Server_视图_函数_存储过程_触发器等>(二十三)

注释_运算符_函数 注释 --单行注释 /* *多行注释 * * */   --定义局部变量 --declare 局部变量名类型[(长度)] =  默认值; --给局部变量赋值 --   se...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)