ASCLL
这道题目的基础是基于字母的ascll值来算的,不知道具体字母的ascll是多少也没关系,关键是需要有这个概念,知道将大写变成小写和小写变成大写都是利用ascll值之差来解决问题。
具体步骤
我们将有个概念,a的ascll值是要比A的大,所以我们判断如果这个字符在’A’和’Z’之间的话就加上’a’-'A’的值。这样每个大写的字母就全部变成小写。具体实现如下:
class Solution {
public:
string toLowerCase(string str) {
string s="";
for(int i=0;i<str.size();i++)
{
if('A'<=str[i]&&str[i]<='Z')
{
str[i]+='a'-'A';
s+=str[i];
}
else
s+=str[i];
}
return s;
}
};
我们这里写的是实现该功能的函数,在想用的地方调用这个函数就行了。虽然这题我们不知道具体的字符的ascll值,但是有几个特殊的还是要记住的:0的ascll值是48、A的ascll值是65、a的ascll值是97。