这个问题我在网上没看到很清楚的回答,w3cschool里也没讲清楚,所以就整理了一下自己的理解,回答了一个百度知道的提问。贴上链接:https://zhidao.baidu.com/question/557784323.html?hideOtherAnswer=true&newAnswer=1)

把答案附如下,如有问题请指教

// 情况一:student作为结构体的标识符 常规操作
struct student{char name[20];int num;float math,yuwen,wuli,mean;
};
struct student st1, st2, st3;/**********************分割线*************************/// 情况二:和上面同样的情况,不过我在定义结构体的时候顺便把st1 st2 st3给声明了。
// 这里后面跟的结构变量st1 st2 st3就是新声明的三个student的实例而已。
struct student{char name[20];int num;float math,yuwen,wuli,mean;
} st1, st2, st3;/**********************分割线*************************/// 情况三:下面这两个例子用了typedef关键字。简单来说,后面的“st”可以代
// 替"struct student"来进行声明。所以下面两种情况自然是等价的。
// 实际上这里后面跟的并不是“结构变量”,这就是typedef的使用格式罢了,
// 所以虽然看起来很像,实际上和上面的情况没什么关系。
typedef struct student{char name[20];int num;float math,yuwen,wuli,mean;
} st;
struct student st1, st2, st3;/**********************分割线*************************/typedef struct student{char name[20];int num;float math,yuwen,wuli,mean;
} st;
st st1, st2, st3;

另外可参考:

https://zhidao.baidu.com/question/543939532.html

https://blog.csdn.net/minyangchina/article/details/4492575

解答:C语言中结构体的定义中,后面跟的“结构体变量”到底是什么?相关推荐

  1. verilog中参数传递与参数定义中#的作用(二)

    一.module内部有效的定义 用parameter来定义一个标志符代表一个常量,称作符号常量,他可以提高程序的可读性和可维护性.parameter是参数型数据的关键字,在每一个赋值语句的右边都必须是 ...

  2. linux c 结构体参数,C语言结构体类型定义

    C语言结构体类型定义 结构体的定义形式如下: struct 结构体名 { 结构体成员 }: 结构体变量的定义方式有三种: 1.先定义结构体,再定义变量: eg. struct student{ cha ...

  3. c语言结构体语法定义,C | 结构体定义

    话说C语言是很多语言学习的基础,理解并掌握好了C语言的一些语法规则,对于以后学习或者说自学其他语言,可以节省不少的时间.下面我们就来了解C语言程序当中的结构体知识点. 结构体的定义形式如下: stru ...

  4. win32汇编程序设计中菜单资源的定义

    1.菜单的基本概念 如下图所示,在窗口中,菜单位于标题栏下边.这个菜单称为"主菜单"或者"顶层菜单",图中菜单的菜单项有"文件"." ...

  5. c语言中申请内存并初始化,c语言中结构体的定义、初始化及内存分配

    #include struct person { char *name; int age; }; int main() { //结构体可以定义在函数内,也可以定义到函数外 //相当于全局变量与局部变量 ...

  6. c语言中结构体类型定义的函数指针,结构体中定义函数指针

    结构体指针变量的定义 定义结构体变量的一般形式如下:形式1:先定义结构体类型,再定义变量struct 结构体标识符{ 成员变量列表;-};struct 结构体标识符 *指针变量名;变量初始化:stru ...

  7. 【C 语言】结构体 ( 结构体类型定义 | 结构体类型别名 | 声明结构体变量的三种方法 | 栈内存中声明结构体变量 | 定义隐式结构体时声明变量 | 定义普通结构体时声明变量 )

    文章目录 一.结构体类型定义 二.结构体类型别名 三.结构体类型变量声明 1.使用结构体类型 ( 别名 ) 声明变量 2. 定义隐式结构体时声明变量 3.定义普通结构体时声明变量 二.完整代码示例 一 ...

  8. c++结构体定义和使用_【C语言更新】结构体的定义及使用

    文/Edward首先先思考一个问题,假设某一天你去了一家策划公司,接到了一个策划需求,比如为新上市的某款手机写一个市场推广的文案,并且在电脑上面打印出来.那么在写这个文案的时候,你肯定是会需要着重地去 ...

  9. c/c++中typedef详解(此文对typedef用于结构体的定义说明得很清楚到位)

    1. typedef 最简单使用 [c-sharp] view plain copy typedef long byte_4; // 给已知数据类型long起个新名字,叫byte_4 你可以在任何需要 ...

最新文章

  1. win7下安装dynamips完全版
  2. Java中文编码小结
  3. 支持向量机(三)核函数
  4. [Windows沙拉]调整Windows7下时间同步的频率
  5. mysql数据迁移 脚本_PHP将数据从Oracle向Mysql数据迁移实例
  6. [js] Number()的存储空间是多大?假如接口返回一个超过最大字节的数字怎么办?
  7. javascript中组合使用构造函数模式和原型模式创建对象
  8. 20210916:Verilog的整数类型易错点
  9. Exchange修改单封邮件大小命令
  10. 2017linux版本号,Linux基本命令 2017-11-27
  11. Python报错: RuntimeError: The current Numpy installation (‘D:\\Develop\\anaconda\\lib\\site-packages\\
  12. awk取列 shell 读文件_大厂运维高手如何打造核心竞争力?这些Shell命令合集得知道!...
  13. ES6学习笔记 -- 尾调用优化
  14. Elipse-基本使用
  15. tmdb数据集_数据科学第2部分的数据管道tmdb api数据搜寻器
  16. 服务器虚拟化发展的趋势,2013年服务器虚拟化九大发展趋势
  17. 【CTF】明御攻防实验室misc ningen
  18. java繁简转换_「繁简体转换」Java中文繁简体转换工具 - seo实验室
  19. oracle:使用cmd命令在远程oracle服务器上执行sql语句
  20. 【2022---计算机考研】数据结构之基础算法背诵版

热门文章

  1. AWS和Azure的区域
  2. shell特殊符号 命令
  3. 双11零售迷思:流量漏斗之外,如何才能让电商节更有长期价值?
  4. 2020年你不清楚的18个非技术面试题是这些!
  5. web在线压缩和解压文件
  6. 什么是人力资源管理系统?hr系统功能介绍
  7. android 返回按钮 黑色,安卓推送10.0,取消返回键,增设暗黑模式,这些改变你知道吗?...
  8. Python深度学习13——Keras模型的可视化(神经网络结构图)
  9. Python入门(第一节):Python版本如何选和安装
  10. ModuleNotFoundError: No module named ‘keras.applications.resnet50‘