猿问

c++,tolower函数功能实现?

#include<iostream>
#include<string>
#include<cctype>
using namespace std;

int main()
{
string s1;
cin>>s1;
cout<<tolower(s1)<<endl;

return 0;

[Error] error: no matching function for call to `tolower(std::string&)'
[Warning] note: candidates are: int tolower(int)
我就是想试试这个函数的功能,也包含了头文件cctype,哪里出错了呢

缥缈止盈
浏览 529回答 2
2回答

慕侠2389804

tolower函数,就是把大写字母转成小写字母。为了使函数更健壮,可以在入口处添加对参数范围的判断,只对大写字母操作。由于函数功能简单,所以tolower最好设置为内联函数(inline)。代码如下:123456inline&nbsp;char&nbsp;tolower(char&nbsp;c){&nbsp;&nbsp;&nbsp;&nbsp;if(c&nbsp;>=&nbsp;'A'&nbsp;&&&nbsp;c<='Z')//是大写字母,执行转换。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;c+='a'-'A';//转成大写。&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;c;}
随时随地看视频慕课网APP
我要回答