Sim*_*ons 3 c++ struct visual-c++
这与我以前的帖子有关
我创建了一个Struct:
struct buffer
{
char ProjectName[20];
char ProjectID[20];
};
Run Code Online (Sandbox Code Playgroud)
现在,当我尝试为其分配值时:
buffer buf;
buf.ProjectID = "3174";
buf.ProjectName = "NDS";
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
error C2440: '=' : cannot convert from 'char [5]' to 'char [20]'
Run Code Online (Sandbox Code Playgroud)
并解决这个问题,我尝试减少结构的大小,如下所示(不能这样做):
struct buffer
{
char ProjectName[4];
char ProjectID[5];
};
Run Code Online (Sandbox Code Playgroud)
和得到 error C2106: '=' : left operand must be l-value
您必须将字符串复制到数组中:
strcpy(buf.ProjectName, "3174");
Run Code Online (Sandbox Code Playgroud)
注意要复制到数组中的字符串的长度