什么是结构体?

之前的学习中我们知道了数组是一个容器,而且是存放固定大小数据的容器,而且存放的元素的数据类型必须要一致。

比如数据库中有这样的一条记录学号 性别 年龄 成绩 地址应该怎样存放

结构体:在一个组合项目中包含若干个类型不同的数据项,c++允许自己指定这样一种数据类型,称为结构体。(用户自定义一种新的数据类型,这种想法是面向对象思想的开端)

struct Student{

int num;

char name[20];

char sex;

int age;

float score;

char address[30];

}

上边的定义称为结构体类型

每一个成员称为结构体中的一个域(field),成员表又叫域表。

下边进行结构体的初始化

3种方法:

(1)先声明结构体再定义结构体变量

struct Student{

int num;

char name[20];

char sex;

int age;

float score;

char address[30];

};

Student student1,student2;

(2) 在声明类型的同时定义变量

struct Student{

int num;

char name[20];

char sex;

int age;

float score;

char address[3

c语言中 定义结构体变量初始化,c++中的结构体:声明 定义 初始化相关推荐

  1. 对C语言 结构指针变量做函数的参数 结构作为函数的参数

    一.结构指针变量做函数的参数 /* 用指针变量作函数参数进行传送,这时由实参传向形参的只是地址,从而减少了时间和空间的开销. */ /* 计算一组学生的平均成绩和不及格的人数,用结构指针变量作函数参数 ...

  2. 结构体指针struct stu *p;和结构体变量struct stu p;结构体为什么要用指针引用而不用变量引用

    只有"指针变量名"后面才能加"->",用指针取出结构体中的数据,就要用到"->",千万不要在成员名如 birthday 后面加& ...

  3. java安全初始化_java安全编码指南之:声明和初始化

    搜索热词 简介 在java对象和字段的初始化过程中会遇到哪些安全性问题呢?一起来看看吧. 初始化顺序 根据JLS(Java Language Specification)中的定义,class在初始化过 ...

  4. c语言fscanf读取结构体变量,怎样用fscanf读入结构体变量

    定义了2个结构体 typedef struct { int dprogtic; int dtic; double tr; double dt; int mflag; short sv; short c ...

  5. Java中如何获得集合变量的集合中的类型参数

    例如:Vector<Data> v = new Vector<Data>(); 这个里面我们是无法通过变量v而得到Vector中参数的类型,因为Vector<Data&g ...

  6. 【C语言】结构体变量定义、初始化、使用

    目录 前言 一.声明"结构体类型" 二.定义结构体变量 方法 1  先声明结构体类型,再定义结构体变量 方法 2 声明类型的同时定义变量 *方法 3 不指定结构体名(结构体标记), ...

  7. C语言中结构体变量的定义及引用

    一.结构体变量的定义 1.结构体类型与结构体变量分开定义 一般形式如下: struct<结构体名><结构体变量名>; eg:struct student student1,st ...

  8. Linux结构体变量报错,C语言中的结构体

    用户自己建立自己的结构体类型 1.  定义和使用结构体变量 (1).结构体的定义 C语言允许用户自己建立由不同类型数据组成的组合型的数据结构,它称为结构体. (2).声明一个结构体类型的一般形式为: ...

  9. C语言 malloc() + 结构体指针定义结构体变量

    之前在学习链表的过程中,笔者认为新节点必须如下定义: struct Node *p; struct Node {int val;p pNext; };int main() {Node Node1;No ...

  10. c语言结构体变量所占字节计算,【C语言】结构体占用字节数及存储与空间分配...

    我们都知道在数据类型中,char类型占1个字节,short占2个字节,int占4个字节,long占8个字节等等. 在计算结构体大小时需要考虑其内存布局,结构体在内存中存放是按单元存放的,每个单元多大取 ...

最新文章

  1. CDH大数据集群安全风险汇总
  2. 12.OpenStack镜像和存储服务配置
  3. lvm扩张与收缩小结
  4. 33岁想从头学做网页设计_从头开始设计精美的移动应用
  5. 【转载保存】Java+Selenium使用
  6. UVA1585 UVALive3354 Score【水题】
  7. 【Java程序设计】接口与多态
  8. ios中input输入无效
  9. linux 程序 指定网卡,Linux socket绑定指定网卡实现负载均衡
  10. 韩信点兵python算法_韩信点兵算法流程图
  11. EChart案例-折线面积渐变色
  12. LabelImage 安装过程
  13. webstorm下载地址分享
  14. 一次变天之后的踏春之旅
  15. pymongo 基本操作
  16. R语言学习笔记:主成分分析及因子分析
  17. PointNet++等3D点云中用到的.cu、.cpp文件的编译的简单理解
  18. 解决!只有IE64位浏览器能上网,其他软件都上不了网
  19. webshell多种方法免杀
  20. 订单支付页面 html,订单支付完成.html

热门文章

  1. Redis高频面试笔记:面向Java开发者的复习指南
  2. 手机怎么制作简历?如何在线做简历?
  3. 深度学习开发任务实例(无人小车)
  4. HTML5利用Canvas绘制图形(绘制渐变、模式、变换)
  5. 视频监控存储六方面 解开视频监控的存储秘密
  6. 跑步耳机哪款好用,几款最适合运动的耳机推荐
  7. python音频频谱_Python 提取音乐频谱并可视化
  8. 深度卷积神经网络结构,基于深度卷积神经网络
  9. C/C++中 sizeof 详解
  10. 计算机网络名词解释和简答题总结