龙空技术网

C++学习大纲:结构类型

中国编程2025 97

前言:

此时同学们对“c用结构体输出学生姓名学号”大致比较关注,小伙伴们都需要剖析一些“c用结构体输出学生姓名学号”的相关文章。那么小编也在网摘上汇集了一些关于“c用结构体输出学生姓名学号””的相关资讯,希望大家能喜欢,我们快快来学习一下吧!


C++ 结构类型

结构类型用于表示由固定多个、类型可以不同的元素所构成的复合数据类型。

1. 结构类型定义

struct <结构类型名> {<成员表>};

或 typedef struct <结构类型名> {<成员表>}<结构体类型别名>;

1)别名可以跟结构类型名不一样,但是一般都是一样的,设置别名是为了方便像其他变量类型一样定义变量,这是保留了C的语法。

2)在结构类型定义时,对成员变量进行初始化是没有意义的,因为类型不是程序运行时刻的实体,它们不占用内存空间。

2. 结构类型变量定义

struct <结构类型名> <变量名表>;//C的用法

或 <结构类型名> <变量名表>;// C++的用法

或 struct <结构类型名> {<成员表>}<变量名表>;

3. 操作

1)访问成员:<结构类型的变量名>.<成员名>

2)对结构类型的数据可以进行整体赋值,但是要保证两者属于相同的结构(成员名和类型都相同)。

4. 存储

结构类型的变量在内存中占用一块连续的存储空间。

5. 结构类型的默认参数传递方式是值传递,因此,当结构类型很大时传输速度回受限。

6. 定义完结构类型后,其使用和平时的类型没有太大的区别,该加加该减减,不过要记住其每个成员也是一个实体。

————————————————


C/C++结构体语法总结

结构体简介

结构体属于聚合数据类型的一类,它将不同的数据类型整合在一起构成一个新的类型,相当于数据库中一条记录,比如学生结构体,整合了学号,姓名等等信息。结构体的好处就是可以对这些信息进行整体管理操作,类似面向对象中类的属性,有了结构体,我就可以更好抽象描述一个类别,个人感觉类就是由结构体发展而来的。在C/C++中,结构体声明的关键字为struct。

C语言结构体语法

第一种语法表示

struct 结构体名称{

   数据类型 member1;

   数据类型 member2;

};

这种方式在声明结构体变量时为:struct 结构体名称 结构体变量名

example :

#include<stdio.h>

struct Student{

int sNo;

char name[10];

};

int main(){

struct Student stu;

scanf("%d",&stu.sNo);

scanf("%s",stu.name);

printf("%d\n",stu.sNo);

}

第二种语法表示

typedef struct 结构体名称{

   数据类型 member1;

   数据类型 member2;

}结构体名称别名;

这种方式在声明结构体变量时有两种方式。

第一种:struct 结构体名称 构体变量名

第二种:结构体名称别名 结构体变量名

原因:这里使用了typedef关键字,此关键字的作用就是声明数据类型的别名,方便用户编程,所以这里用了之后,结构体名称别名就相当于struct 结构体名称。在声明结构体变量时,就无需写struct了。

example:

#include<stdio.h>

typedef struct Student{

int sNo;

char name[10];

}Stu;

int main(){

struct Student stu; //方式一

Stu stu1; //方式二

scanf("%d",&stu.sNo);

scanf("%s",stu.name);

printf("%d\n",stu.sNo);

scanf("%d",&stu1.sNo);

scanf("%s",stu1.name);

printf("%d\n",stu1.sNo);

}

第三种方式

struct 结构体名称{

   数据类型 member1;

   数据类型 member2;

}结构体变量名;

相当于:

struct 结构体名称{

   数据类型 member1;

   数据类型 member2;

};

struct 结构体名称 结构体变量名;

这种方式既定义了结构体名称,同时声明了一个结构体变量名。在其它地方也可以通过struct 结构体来再次声明其它变量,而第四种方法则不可以。

example:

#include<stdio.h>

struct Student{

int sNo;

char name[10];

}stu; //此处stu 是变量名

int main(){

scanf("%d",&stu.sNo);

scanf("%s",stu.name);

printf("%d\n",stu.sNo);

}

第四种方式

struct {

   数据类型 member1;

   数据类型 member2;

}结构体变量名;

此方式是匿名结构体,在定义时同时声明2个结构体变量,但不能在其它地方声明,因为我们无法得知该结构体的标识符,所以就无法通过标识符来声明变量。

example:

#include<stdio.h>

struct {

int sNo;

char name[10];

}stu,stu1; //匿名结构体,同时定义了2个结构体变量

int main(){

scanf("%d",&stu.sNo);

scanf("%s",stu.name);

printf("%d\n",stu.sNo);

scanf("%d",&stu1.sNo);

scanf("%s",stu1.name);

printf("%d\n",stu1.sNo);

}

C++语言结构体语法

C++语言结构体语法的C大同小异,声明结构体变量时可以省略struct 其它无变化!

具体参照C语言部分,在用到“struct 结构体名称”时,可以简写为“结构体名称”来声明。

————————————————

通过分享实用的计算机编程语言干货,推动中国编程到2025年基本实现普及化,使编程变得全民皆知,最终实现中国编程之崛起,这里是中国编程2025,感谢大家的支持。

原文链接:

原文链接:

标签: #c用结构体输出学生姓名学号