问题描述
- C++的一个小问题,求解
-
#include
using namespace std;
struct student
{
char name[20];
int age;
};
int main()
{
student name1;
name1.name="youhognjie";
cout<<name1.name<<endl;
}如上,为什么会报错呀
解决方案
字符数组定以后不能直接赋值字符常量
引入string.h
通过
strcpy(name1.name, "youhognjie");
解决方案二:
1.字符数组初始化
正确方式:char name[20] = "youhognjie";
错误方式:
char name[20];
name[20] = "youhognjie";
//你的程序就是这种错误的方式
2.你的程序修改成下面的形式:
#include
using namespace std;
struct student
{
char name[20];
int age;
};
int main()
{
student name1;
strcpy(name1.name, "youhognjie");//这句话的意思就是将"youhognjie"赋值给name1.name.
cout<<name1.name<<endl;
return 0; //请注意别忘记了这句话,一定要仔细。
}
时间: 2024-11-17 03:11:12