C语言小问题之——结构体定义

一下内容均来自你必须要知道的495C语言问题以及谭浩强一书中结构体的内容 写下来 纯粹为了学习  只写一点 基本的东西

1:  首先 声明一个结构体类型的一般形式是:

struct  结构体名

{成员表列};

注意 :

结构体类型的名字是由关键字和结构体名组合而成的   比如struct student 这个就叫做结构体的类型  。其实就是想当于我们之前学的int 。只是类型不同而已。一个结构体类型一个整形。这个student 是结构体名  是可以由我们自己随便定义的 又称为结构体标记(structure tag)用来区别其他的结构体类型  就是说结构体的类型并非只有一种 比如struct student 和 struct A或者struct B都是不同的结构体类型  各自包含不同的成员而已

2: 定义结构体类型的变量  

定义形式为:结构体类型+变量名 

比如:struct student   studenet1,student2;

 -------------------  ————   ————

结构体类型名         结构体变量名

其实这种定义和int  a,b;是相似的  

定义形式1:我们可以在定义结构体类型的时候 同时定义结构体变量  其形式为

struct  student

{

成员表列;

}变量名表列 ;

定义形式2:不指定类型名而直接定义结构体类型的变量   其形式为

struct  

{

成员列表;

}变量名表列;

但是这种定义方式 指定了一个无名的结构体类型   没有名字  那么就不能再以此结构体类型去定义结构体变量。所以这种方式用的并不多

注意1:

这里要说一下 结构体类型和结构体变量名  这两个是不一样的   我们只能对变量进行赋值 运算 或者存取,但是不能对一个类型进行赋值运算  或者存取 ,就比如 int  a;你可以对a进行操作 但是却不能对int进行操作,在编译的时候 对类型是不分配存储空间的,只对变量分配存储空间。

注意2:

结构体中的成员名字可以和程序中变量的名字相同 两者不会有影响   








  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值