C++语法-结构体
结构体的介绍
结构体是C++特有的一种数据类型,使用结构体可以在程序里自己定义一个数据类型。
比如定义一个结构体,名字为Boy,现在我们就可以使用Boy Tom;
定义一个类型为Boy的变量Tom。
定义结构体时不仅要包含名称,还要声明这个结构体是怎样组成的。以结构体Boy为例,一个Boy类型的变量可以包含一个字符串,当做名称,还可以定义int类型的变量当做这个Boy的年龄。
结构体的定义
结构体的定义可以定义在全局,也可以定义在局部。定义在函数内的结构体只能在函数里使用,在全局的结构体可以在整个程序里被使用。
下面是定义一个结构体的代码,名字叫Boy。
struct Boy;
接下来要往结构体里添加两个元素。
struct Boy{
std::string name;
int age;
};
上面定义的结构体Boy包含两个元素name
和age
,现在我们可以用这个结构体定义变量了。
定义一个结构体变量的实例
定义一个结构体
结构体名称[空格]结构体变量名称[分号]
结构体中的元素是什么完全由你制定。
访问刚刚定义好的结构体变量
访问结构体变量可麻烦呢!
还是这个结构体
struct Boy{
std::string name;
int age;
};
但是你不可以整个访问结构体变量,你需要制定结构体的某一个元素去访问。
如果你要输出Tom的name元素,要这样:
std::cout<<Tom.name;
如果要输入也是这样
std::cin>>Tom.name;
但是你不可以整个输入
错误示范:
std::cin>>Tom;
结构体数组
struct Boy{
std::string name;
int age;
};
这个结构体,如果你要使用它定义一个数组,需要这样做
Boy a[10000];
如果你要输入元素,需要这样做:
cin>>a[i].name>>a[i].age;
结构体初始化
初始化有两类
第一种是从
struct Boy{
std::string name;
int age;
};
改成
struct Boy{
std::string name = "TOM";
int age=12;
};
这样你每定义一个结构体后内容的话结构体变量的两个元素就是你初始化时制定的值了
第二种是
struct Boy{
std::string name;
int age;
};
Boy a = {
"TOM",
"12
};
同理我们也可以
struct Boy{
std::string name;
int age;
};
Boy a;
a={
"TOM",
"12
};
这是mcr130102的博客,转载请注明出处