isalpha就是判断是否为字母,包括大小写,返回bool值
isdigit就是判断是否为十进制数字,返回bool值
isalnum就是判断是否为字母或十进制数字,包括字母大小写,返回bool值
isupper是判断是否为字母大写,返回bool值
islower就是判断是否为字母小写,返回bool值
toupper就是把小写字母转换为大写字母,如果参数不是小写字母就不转换
tolower就是把大写字符转换为小写字母,如果参数不是大写字母就不转换
可以拿力扣 125.验证回文串来参考使用
- class Solution {
- public:
- //主要是学习了一些简单的c++库函数 isalnum toupper等
- //该题为双指针算法 要注意这个逻辑
- //题意只考虑字母和数字字符,忽略大小写
- bool isPalindrome(string s) {
- for(int i=0,j=s.size()-1;i
- {
-
- while(i
isalnum(s[i])) i++; //这步是跳出非法字符 - while(i
isalnum(s[j])) j--; //同样跳出非法字符 - if(i
toupper(s[i])!=toupper(s[j])) return false; -
- }
- return true;
- }
- };