C++字符串大小写转换完全指南:轻松实现大小写转换的方法与示例

在这篇文章中,我们将深入探讨如何将输入字符串转换为C++中的小写和大写形式。C++的字符串类提供了大量内置函数来对输入字符串执行各种操作。


将C++字符串转换为大写字母

C++的字符串类提供了内置的toupper()函数,可以将输入的字符串转换为大写。

语法:

toupper(input_string)
#include <iostream>
#include <cstring>


using namespace std;

int main()
{
    char arr[] = "Engineering Discipline.";

    cout << "原始字符串:\n"<< arr<< endl;
    cout<<"大写字符串:\n";
    for (int x=0; x<strlen(arr); x++)
        putchar(toupper(arr[x]));
    
    return 0;
}

在上面的代码片段中,cstring头文件包含了与字符串相关的函数。而且,strlen()函数被用来计算输入字符串的长度。

putchar() 方法用于在屏幕/控制台上显示数据。

输出:

原始字符串:
Engineering Discipline.
大写字符串:
ENGINEERING DISCIPLINE.

将输入字符转换为大写

利用ASCII值进行大小写转换

我们甚至可以根据输入字符的ASCII值将字符或字符串转换为大写或小写。

小写字母(a-z)的ASCII值范围为97-122。

大写字母(A-Z)的ASCII值范围为65-90。

示例:

#include <iostream>
using namespace std;

int main()
{
   char X;
   cout << "请输入一个字符:";
   cin >> X;
   X = X - 32;
   cout << "转换为大写后的字符:";
   cout << X;
   return 0;
}

如上所述,小写字母和大写字母的ASCII值范围之间存在一个32的差异(即97-65)。

为了将输入转换为大写,我们需要从输入字符的ASCII值中减去32。

运行结果:

请输入一个字符:f
转换为大写后的字符:F

使用C++内置函数转换为小写

C++的字符串拥有内置的tolower()函数,可将输入字符串转换为小写。

语法结构

tolower(input)

示例:

#include <iostream>
#include <cstring>

using namespace std;

int main()
{
    char arr[] = "Engineering Discipline.";

    cout << "原始字符串:\n" << arr << endl;
    cout << "转换为小写后的字符串:\n";
    for (int x = 0; x < strlen(arr); x++)
        putchar(tolower(arr[x]));
    
    return 0;
}

输出结果:

原始字符串:
Engineering Discipline.
转换为小写后的字符串:
engineering discipline.

将输入的字符转换为小写

示例

原文:I want to eat dinner at home tonight.

转译:今晚我想在家吃晚饭。

#include <iostream>
using namespace std;

int main()
{
   char X;
   cout<<"请输入一个字符:"; 
   cin>>X;
   X=X+32;
   cout<<"转换为小写后的字符:";
   cout<<X;
   return 0;
}

我们需要将输入字符的ASCII值加上32,以将其转换为小写字母。

输出:

请输入一个字符:R
转换为小写后的字符:r

结论

在本文中,我们已经了解了如何在C++中将字符和字符串输入转换为大写和小写。需要注意的重要一点是,ASCII方法只是将输入的字符转换为ASCII码,然后再转换回去。如果有人输入数字而不是字符,你将会得到一个随机的输出。

你可以处理输入并确保输入的值实际上是字符,也可以简单地使用toupper()和tolower()函数。我们希望这个教程对你有用。如果你有任何问题,请在下方评论。


参考文献

  • C++字符串转为大写
  • C++字符串转为小写
bannerAds