c语言结构体复习笔记
1.定义结构提的语法格式
struct 【结构名称】
{
成员变量定义
}【变量名列表】;
2.结构体数据类型名
struct 【结构名称】,【结构名称】如果缺省则无法使用结构类型名来定义变量。
3.定义结构变量
可以在定义结构体时直接定义变量,也可以使用结构数据类型名来定义变量。
struct date{int y,m,d;};
struct student
{
long num;
char sex;
char name[9];
int weight,age;
float height;
struct date birthday;
}a1,a2,*p,b[5];
struct student *q=b,y[4][5];
其中,a1、a2都是普通结构变量,p、q都是以结构体struct student为对象类型的指针变量,b[5]和y[4][5]都是以结构体struct student为元素类型的数组。
4.结构体变量的存储结构
c语言按照成员变量的定义顺序依次存储各成员变量,整个结构变量占用的存储空间为所有成员变量存储空间之和。
5.指向结构体的指针
结构体指针的对象为整个结构变量,结构体指针进行加减整数n的运算时,地址值实际加减n倍结构体类型存储长度。
可以用内存分配函数为结构体指针建立对象,比如:
struct student *p1;
p1=(struct student *)malloc(sizeof(struct student));
6.结构体变量的初始化
在定义结构变量时,可以对结构变量进行初始化。结构变量的初始化就是对各成员变量赋初值。
语法格式是:
struct [结构名称]{成员变量定义} 变量名={成员变量初值表};
其中,成员变量初值必须是常量表达式;初值的排列顺序就是成员变量的定义顺序;初值之间用逗号分隔.
如:struct {int x,y;}point={1,5};
struct student st[3]={
{20011001,'M',"ZhangJun",61,18,1.80f,{198,3,15}},
{20011002,'W',"WuLi",61,18,1.80f,{198,3,15}},
{20011003,'M',"zhangjun",61,18,1.80f,{198,3,15}}
} ;
7.访问结构体成员变量
方式一:用结构体变量名访问成员:结构体变量名.成员变量名
方式二:用指向结构体的指针访问成员:结构体指针->成员变量名
如:st[1].num=20011004; //将st[1]的学号改为20011004
st->height-=0.1; //st[0]的身高减小0.1米
c语言结构体复习笔记相关推荐
- linux中c语言结构体详解,Linux C语言结构体-学习笔记
Linux C语言结构体简介 前面学习了c语言的基本语法特性,本节进行更深入的学习. 预处理程序. 编译指令: 预处理, 宏定义, 建立自己的数据类型:结构体,联合体,动态数据结构 c语言表达式工具 ...
- python展开 c函数中的宏预处理_Linux C语言结构体-学习笔记
Linux C语言结构体简介 前面学习了c语言的基本语法特性,本节进行更深入的学习. 预处理程序. 编译指令: 预处理, 宏定义, 建立自己的数据类型:结构体,联合体,动态数据结构 c语言表达式工具 ...
- C语言结构体复习(一)
复习树的时候发现结构体实现并不流畅熟练,先搞定一下结构体.之后搞定树,二叉树,图等 目录 一. 几种结构体定义: 1.先是定义不带初始化的两个 2.然后是两个定义时就进行初始化的两个结构体 二.机构体 ...
- c语言结构体成员变量默认值,C语言结构体要点笔记
近日,做一个东西却发现自己在C语言,特别是结构体这个知识点上还缺乏认识.所以在学习了网友的分享后,下面在下文记录一些重要的要点吧. 一.struct是一种复合数据类型(这一点很重要,结构体只是一个类型 ...
- c语言-结构体实例笔记
结构体实例 实例一览: 使用结构体存储学生的信息 Store information of a student using structure 计算二者距离(以英寸英尺为单位) Add two dis ...
- c语言2个字符串可以相互赋值吗,c语言结构体2之变量赋值于字符串
#include #include struct dangdang { char email[]; char name[]; char addr[]; int num; int bugnum; cha ...
- c语言结构体和联合体,C语言结构体和联合体
1.单链表插入 #include #include #define FALSE 0 #define TRUE 1 typedef struct NODE{ STRUCT NODE *link; int ...
- 计算机科学类专升本复习之“C语言结构体”详解(初稿)
C语言结构体详解,C语言struct用法详解 前面所学到的"数组":它是一组具有"相同类型"的数据的集合. 但是在实际的编程中,我们往往还需要 一组" ...
- c语言结构体教案,结构体——教学设计
<结构体--教学设计>由会员分享,可在线阅读,更多相关<结构体--教学设计(7页珍藏版)>请在人人文库网上搜索. 1.课堂教学设计表章节名称结构体学科C语言程序设计授课班级大一 ...
最新文章
- Java_Shell多线程
- 【Python】青少年蓝桥杯_每日一题_4.03_求偶数
- apt-get、apt、yum、dpkg、rpm
- TensorFlow是什么?怎么用?终于有人讲明白了
- Flutter中使用友盟统计
- Spark API编程动手实战-08-基于IDEA使用Spark API开发Spark程序-01
- 如何不用BPM配置时间
- centos升级内核 大漠知秋_记一次centos 7内核升级事故
- 《冷眼看IT》读书笔记--IT将成为服务行业
- 机器学习(五)——机器视觉从入门到精通只要简单这3步
- 职工工资管理系统c语言,C++实现企业职工工资管理系统
- 【爬虫】使用八爪鱼爬行百度地图美食店数据
- linux系统的服务
- 关于内存类型 UDIMM、RDIMM、LRDIMM 的学习结论(转)
- 外盘国际期货是否合法吗?为啥还有人做期货主账户?
- oracle ebs ar 表,Oracle EBS R12 AR常用表
- 【基础强训】day4
- Android之延时操作方法
- 算法001-C++从0到1实现链表v1
- 怎么才能在Mac电脑提醒事项添加提醒事项
热门文章
- cad一键标注闭合区域lisp_自从用了这个CAD神器,我下班总比别人早
- requests payload_python+Requests接口自动化测试之传递 URL 参数
- SpaceX再送4人上太空,马斯克保证这次飞船厕所不会漏了
- 爆改100多元卡西欧,可测速、测温、测海拔,一点不输智能运动表
- 程序员为这支笔掰头10个月,隔壁小学生都馋哭了
- Science封面:三元锂电池安全性差、寿命短问题已解决,来自美国能源部华人团队最新研究...
- 2位华人获得加州理工学院计算机、数学博士奖学金,3年近一半由华人获得
- 8Manage CRM:智能时代会员“赢”销之宝
- 阿里巴巴Android开发手册(正式版)
- CCF NOI1063 计算组合数