c++中 isupper()和islower()函数详解

来自:网络
时间:2024-06-09
阅读:

在C++中,islower()和isupper()是C++标准库中提供的两个字符判断函数。这两个函数用于判断一个字符是否为小写字母或大写字母。

islower()函数的原型如下:

int islower(int c);

它接受一个字符作为参数,返回非零值(true)表示该字符为小写字母,返回零(false)表示该字符不是小写字母。

isupper()函数的原型如下:

int isupper(int c);

它接受一个字符作为参数,返回非零值(true)表示该字符为大写字母,返回零(false)表示该字符不是大写字母。

这两个函数的参数c可以是一个字符常量、字符变量或者字符表达式。它们只检查字符的ASCII值,因此只适用于ASCII字符集中的字符。

下面是一些示例代码,演示了如何使用islower()和isupper()函数:

#include <iostream>
#include <cctype>
int main() {
    char c = 'a';
    if (islower(c)) {
        std::cout << "The character is a lowercase letter." << std::endl;
    } else {
        std::cout << "The character is not a lowercase letter." << std::endl;
    }
    char d = 'A';
    if (isupper(d)) {
        std::cout << "The character is an uppercase letter." << std::endl;
    } else {
        std::cout << "The character is not an uppercase letter." << std::endl;
    }
    return 0;
}

输出结果为:

The character is a lowercase letter.
The character is an uppercase letter.

在上面的代码中,我们分别使用islower()和isupper()函数来判断字符c和d是否为小写字母和大写字母,并根据结果输出相应的信息。

需要注意的是,islower()和isupper()函数返回的是整型值,而不是布尔值。它们的返回值为非零表示true,返回值为零表示false。因此,我们可以直接将其作为条件判断语句的条件。如果需要将其作为布尔值使用,可以使用逻辑非运算符!进行转换。例如:

char c = 'a';
bool isLowercase = !islower(c);

在上面的代码中,将!islower(c)的结果赋值给了isLowercase。如果c是小写字母,则isLowercase为false;如果c不是小写字母,则isLowercase为true。这样可以方便地使用布尔值进行后续的逻辑判断。

返回顶部
顶部