"Lvalue required"错误



我有以下C++代码,当我编译它时,我收到"需要左值"错误。请指出我哪里出错了。谢谢。

#include <iostream.h>
#include <conio.h>
void main()
{
  clrscr();
  char r[5];
  int mark;
  cout<<"Please enter your goddamn marks";
  cin>>mark;
  r=mark>=35?"pass":"fail";
  cout<<"n"<<r;
}

问题就在这里:

r=mark>=35?"pass":"fail";

不能将字符串文本分配给char数组。您有以下几种选择:

  • 使用strcpy()而不是分配;
  • r更改为类型 const char* ;
  • r更改为类型 std::string

最后一个选项是迄今为止最好的。

相关内容

最新更新