我想为一个来自结构成员的全局声明的变量赋值。
这是我的代码:
#include<iostream.h>
#include<conio.h>
#include<string.h>
char question[15];
struct place{
char name[15];
int length;
}aa={"Paris",5};
void places()
{
question[15]=aa.name[15];
}
main()
{
clrscr();
places();
cout<<question;
getch();
return 0;
}
希望有人可以提供帮助!
答案 0 :(得分:0)
首先 - 您应该停止使用Turbo C ++,它不再受支持,并且是C ++的过时实现。 (你将学习糟糕的编码技术)
您可以在这里下载 free modern compiler _AND_ development environment 一个..., HERE 是另一个。
关于您的问题 :
您无法使用=
运算符进行char数组赋值,就像在places()
中尝试过一样。您需要使用 string functions 成为熟悉者。对于您在void places()
函数中进行的作业,您可以使用strcpy()
。
更改:
question[15]=aa.name[15];//Not correct. The variables have already been
//created, do not include array operator here `[]`
致:
strcpy(question, aa.name);