21xrx.com
2024-12-22 21:57:00 Sunday
登录
文章检索 我的文章 写文章
C++中大小写转换的方法
2023-06-27 20:17:51 深夜i     --     --
C++ 大小写转换 方法

C++语言中,大小写转换是一项非常常用的操作,常见于字符串处理、文件处理等领域。针对不同的需求,有多种转换方法可供使用。本文将介绍几种常见的C++大小写转换方法。

一、利用头文件ctype.h

ctype.h是C/C++的一个头文件,提供若干字符处理函数。其中包括toupper和tolower函数,可以分别将字符转换为大写和小写。这两个函数的用法非常简单,只需要传入需要转换的字符即可。

例如:


#include <ctype.h>

#include <iostream>

using namespace std;

int main()

{

  char c = 'A';

  cout << "原字符: " << c << endl;

  cout << "转大写: " << char(toupper(c)) << endl;

  cout << "转小写: " << char(tolower(c)) << endl;

  return 0;

}

输出结果为:


原字符: A

转大写: A

转小写: a

二、利用算术运算

C++语言中,大小写字母的ASCII码值相差32。因此,我们可以通过加上或减去32来进行大小写转换。

例如:


#include <iostream>

using namespace std;

int main()

{

  char c = 'A';

  cout << "原字符: " << c << endl;

  cout << "转大写: " << char(c - 32) << endl;

  cout << "转小写: " << char(c + 32) << endl;

  return 0;

}

输出结果为:


原字符: A

转大写: A

转小写: a

三、利用位运算

位运算是一种复杂但灵活的处理方法,可以对字符进行大小写转换。

例如:


#include <iostream>

using namespace std;

int main()

{

  char c = 'A';

  cout << "原字符: " << c << endl;

  cout << "转大写: " << char(c & 0xDF) << endl;

  cout << "转小写: " << char(c | 0x20) << endl;

  return 0;

}

输出结果为:


原字符: A

转大写: A

转小写: a

四、自定义函数

以上三种方法均是通过调用系统函数或运算操作进行大小写转换。除此之外,我们还可以自定义函数来实现转换。

例如:


#include <iostream>

using namespace std;

char to_lower(char c)

{

  if(c >= 'A' && c <= 'Z')

  {

    return c + 32;

  }

  else

  

    return c;

  

}

char to_upper(char c)

{

  if(c >= 'a' && c <= 'z')

  

    return c - 32;

  

  else

  

    return c;

  

}

int main()

{

  char c = 'A';

  cout << "原字符: " << c << endl;

  cout << "转大写: " << to_upper(c) << endl;

  cout << "转小写: " << to_lower(c) << endl;

  return 0;

}

输出结果为:


原字符: A

转大写: A

转小写: a

总之,在C++中进行大小写转换有多种方法可供选择。开发者可以根据自己的需求进行选择。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复