c++ string大小写转换
时间: 2023-09-02 22:14:06 浏览: 44
字符串大小写转换可以通过两种方法实现:使用库函数toupper()和tolower(),或者使用ASCII码。
方法一:使用库函数toupper()和tolower()
在C语言中,可以使用库函数toupper()将小写字母转换为大写字母,使用tolower()将大写字母转换为小写字母。这两个函数需要包含头文件<ctype.h>。
以下是一个将字符串转换为大写字母的函数:
```c
#include <ctype.h>
void toUpper(char* str) {
while (*str) {
*str = toupper(*str);
str++;
}
}
```
以下是一个将字符串转换为小写字母的函数:
```c
#include <ctype.h>
void toLower(char* str) {
while (*str) {
*str = tolower(*str);
str++;
}
}
```
方法二:使用ASCII码
在C语言中,每个字符都有对应的ASCII码。大写字母的ASCII码范围是65-90,小写字母的ASCII码范围是97-122。因此,可以通过ASCII码进行大小写转换。
以下是一个将字符串转换为大写字母的函数:
```c
void toUpper(char* str) {
while (*str) {
if (*str >= 'a' && *str <= 'z') {
*str = *str - 32;
}
str++;
}
}
```
以下是一个将字符串转换为小写字母的函数:
```c
void toLower(char* str) {
while (*str) {
if (*str >= 'A' && *str <= 'Z') {
*str = *str + 32;
}
str++;
}
}
```
注意,在使用ASCII码进行转换时,需要判断字符是否为字母,否则可能会出现意外的错误。