C++ 关于函数返回引用值的问题。
写了一个对字符串进行大小写转换的代码,调用返回字符串的函数,但是输出为空白,代码如下,请大神来分析下!#include<iostream>#include<string>...
写了一个对字符串进行大小写转换的代码,调用返回字符串的函数,但是输出为空白,代码如下,请大神来分析下!
#include <iostream>
#include <string>
#include <algorithm>
#include <iterator>
using namespace std;
string& trans_up(string& a);
string& trans_low(string& a);
static string abc;
static string ab;
int main()
{
string a;
cout<<"enter a string to transform:"<<endl;
cin>>a;
string& b=a;
trans_up(b);
trans_low(b);
cout<<"the to upper result is:"<<abc<<endl;
cout<<"the to lower result is:"<<ab<<endl;
return 0;
}
string& trans_up(string& a){
transform(a.begin(),a.end(),abc.begin(),::toupper);
return abc;
}
string& trans_low(string& a){
transform(a.begin(),a.end(),ab.begin(),::tolower);
return ab;
} 展开
#include <iostream>
#include <string>
#include <algorithm>
#include <iterator>
using namespace std;
string& trans_up(string& a);
string& trans_low(string& a);
static string abc;
static string ab;
int main()
{
string a;
cout<<"enter a string to transform:"<<endl;
cin>>a;
string& b=a;
trans_up(b);
trans_low(b);
cout<<"the to upper result is:"<<abc<<endl;
cout<<"the to lower result is:"<<ab<<endl;
return 0;
}
string& trans_up(string& a){
transform(a.begin(),a.end(),abc.begin(),::toupper);
return abc;
}
string& trans_low(string& a){
transform(a.begin(),a.end(),ab.begin(),::tolower);
return ab;
} 展开
1个回答
展开全部
#include <iostream>
#include <string>
#include <algorithm>
#include <iterator>
using namespace std;
string& trans_up(string& a);
string& trans_low(string& a);
int main()
{
string a;
cout<<"enter a string to transform:"<<endl;
cin>>a;
string& b=a;
trans_up(b);
cout<<"the to upper result is:"<<a<<endl;
trans_low(b);
cout<<"the to lower result is:"<<a<<endl;
return 0;
}
string& trans_up(string& a){
transform(a.begin(),a.end(),a.begin(),::toupper);
return a;
}
string& trans_low(string& a){
transform(a.begin(),a.end(),a.begin(),::tolower);
return a;
}
更多追问追答
追问
大神,麻烦问下。
transform中两次调用a不会出现问题吗?还有就是我原来那个代码哪里有问题,我设定一个静态变量,我个人以为是可以在引用函数中返回的,但它并没有返回。。。
追答
不仅不会出问题,而且还是必须要两次调用a
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询