黑马程序员_结构体论述
来源:互联网 发布:软件开发教材 编辑:程序博客网 时间:2024/05/18 02:46
面向对象和结构体有点像,所以专门对结构体做一下总结。
结构体就是一些基本的数据类型组合在一起形成一个新的数据类型。
结构体的定义:
定义结构体的方式可以分为三种:
1 定义一个数据类型
struct people{ int weight; float age; char sex; }
2 第二种方法
struct people{ int weight; float age; char sex; }peo;
3 第三种方式
struct { int weight; float age; char sex; }peo;
结构体变量可以在定义的同时并赋给初值,如果定义之后只能单独赋初值。
关于结构体的调用
- 结构体变量名+成员名
- 指针变量名->成员名(一般使用第二种方式)
指针变量名->成员名 在计算机内部会被转化成(*指针变量名).成员名的方式来执行,所以说这两种方式是等价的。
struct Student{ int age; float score; char sex;};int main(void){ struct Student st ={80,66.6,'F'};//初始化,定义的同时赋值 struct Student *pst=&st;//&st不能改成st pst->age=99;//第二种方式 st.age=10;//第一种方式 return 0;}
- pst->age 在计算机内部会被转化成(*pst).age,这就是->的含义,这也是一种硬性规定
- pst->等价于(*pst).age也等价于st.age
- 我们之所以知道pst->age等价于st.age,是因为pst->是被转化成了(*pst).age来执行
- pst->age的含义:pst所指向的那个结构体变量中的age这个成员
结构体变量和结构体指针变量作为函数参数传递的问题,一般我们可以使用结构体指针变量作为函数参数来传递结构体变量的运算,结构体变量不能相加,不能相减,也不能相乘除,但结构体变量可以相互赋值
struct Student{ int age; char sex; char name[100];};//分号不能省略struct Student st1,st2;st1=st2;//或st2=st1;
0 0
- 黑马程序员_结构体论述
- 黑马程序员_结构
- [黑马程序员]_常量、枚举、结构体
- 结构体论述
- 黑马程序员—C语言_结构体、枚举
- 黑马程序员_Foundation框架01_结构体
- 黑马程序员_C语言_结构体与枚举
- 黑马程序员—08Foundation框架_结构体
- 黑马程序员_枚举,结构,数组,方法
- 08黑马程序员_枚举,结构,数组
- 黑马程序员_C语言_循环结构
- 黑马程序员-结构体
- 黑马程序员_05_while_for_break_continue_重载_数组_内存结构
- 黑马程序员_分支结构、枚举、结构、数组
- 01.黑马程序员-结构体
- 黑马程序员--oc结构体
- 黑马程序员—结构体
- 黑马程序员_C语言基础_构造类型(数组,结构体,枚举)
- What is Clean Code?
- 随机数产生器RNG
- Android SDKPackage with SDK tools 24.03, Android M
- 第十一周项目1-存储班长信息的学生类
- Swift学习笔记-函数和闭包(1)
- 黑马程序员_结构体论述
- transformer 自动刷新CUBE命令
- myibats原理深入理解总结
- 进程 A、B之间利用管道 ,共享内存,信号量来进行通信
- 千山万水之Hibernate(九)——Component映射
- HDU 5254 棋盘占领(百度之星初赛2)
- 绑定自定义类到lua
- Javascript 严格模式详解
- 流媒体技术之传输协议