这是教授要我做的事情: “函数upConvert是将ascii字符的C ++字符串转换为适当大小的动态分配字符数组(旧式C字符串)。字符数组必须与字符串具有相同的ascii字符,除了所有小写字符变成大写。“
char* upConvert(const string& s ){
for(unsigned int l = 0; l < s.length(); l++)
{
s[l] = toupper(s[l]);
}
我得到的错误:
read-only variable is not assignable
s[l] = toupper(s[l]);
答案 0 :(得分:2)
您将s
作为常规参考传递给upConvert
,因此无法更改。我要说删除const
,但这个解决方案看起来不像教授所要求的那样。
答案 1 :(得分:1)
好吧,我将尝试不给你代码答案,但这是一种解决方法......
检查出来:http://www.cplusplus.com/reference/string/string/c_str/