C语言11 结构体

作者: Asura_Luo | 来源:发表于2018-05-04 02:47 被阅读0次

C语言11 结构体

思考:

当需要一个容器能够存储1个字节,你会怎么做? //char
当需要一个容器能够存储4个字节,你会怎么做? //int
当需要一个容器能够存储100个2个字节的数据,你会怎么做? //short arr[100]

当需要一个容器能够存储5个数据,这5个数据中有1字节的,2字节的有10字节的。。。你会怎么做??

=====

结构体

我需要这样的一个容器:

生命  int
魔法  int
技能  int
经验  int
血值  int
等级  int
移动速度    float
名称  char[0x20]


char    =   容器
int    =   容器
数组    =   容器
结构体    =   容器

结构体的定义:

struct 类型名{
    //可以定义多种类型
    int a;
    char b;
    short c;
};
  1. char/int/数组 等是编译器已经认识的类型:内置类型
  2. 结构体是编译器不认识的,用的时候需要告诉编译器一声:自定义类型
  3. 上面的代码仅仅是告诉编译器 我们自己定义的类型是什么样的,本身并不占用内存
  • 接口体声明位置拥有如同声明变量一样的属性 局部和全局
  • 结构体在定义的时候 除了自身以外,可以使用任何类型

结构体类型变量的定义:

struct stPoint
{
    int x;
    int y;
}
//结构体类型 变量名;

struct stPoint stPoint;
struct stPoint point = {10,20};


struct stStudent
{
    int stucode;
    char stuName[20];
    int stuAge;
    char stuSex;
}

struct stStudent student = {101,"张三",18,'M'};

结构体变量的读写:

struct stPoint
{
    int x;
    int y;
}

stPoint point = {10,20};
int x;
int y;

//读
x =point.x;
y = point.y;

//写
point.x = 100;
point.y = 200;

动手思考

struct stPoint
{
    int x;
    int y;
}

    stPoint point = {10,20};
    stPoint point2 = {11,20};
    point = point2;
    
    //可以吗? 

定义结构体类型的时候,直接定义变量

struct stPoint
{
    int x;
    int y;
}point1,point2,point3;

//这种方式是分配内存的,因为不仅仅是定义新的类型。还定义了三个全局变量

point1.x = 1;
point1.y = 2;

point2.x = 3;
point2.y = 4;

point3.x = 5;
point3.y = 6;

相关文章

  • C语言和OC的结构体(struct)

    Struct(结构体) 1.结构体定义 2.结构体变量 3.结构体数组 4.C语言结构体指针 5.C语言共用体 6...

  • C语言11 结构体

    C语言11 结构体 思考: 当需要一个容器能够存储1个字节,你会怎么做? //char当需要一个容器能够存储4个字...

  • C语言结构体用法很多,坑也很多

    C语言可谓是编程界的传奇语言,历经几 十 年,依然排名前列。 本文主要说的是C语言中的结构体,结构体是C语言中重要...

  • C语言结构体

    结构体 本文介绍C语言结构体,struct 在C++中功能相对C较多,相当于类,这里暂时不讨论,本文单独讨论C语言...

  • 嵌入式学习笔记19.11.25

    c语言结构体 结构体一般定义全局变量 struct stu{//struct 定义结构体 stu 结构体名称 in...

  • 12-Go语言结构体

    结构体 结构体的基本概念 什么是结构体Go语言中的结构体几乎和C语言中的结构体一模一样都需要先定义结构体类型, 再...

  • C语言学习笔记-结构体占用内存大小的计算

    引言 结构体在C语言中虽然经常使用,但是怎么计算一个结构体占用多大的内存,很多C语言的新手都没注意过,其实C语言的...

  • 结构体与指针

    1.1 Linux C语言结构体 简介:本课程深入的讲解了C语言中,预处理是怎么回事,结构体和公用体又是如何使用及...

  • c语言中的结构体

    结构体是 C 语言主要的自定义类型方案,这篇就来认识一下结构体。 一、结构体的形态 C源程序(struct.c):...

  • 闲聊C语言结构体

    结构体是 C 语言主要的自定义类型方案,这篇就来认识一下结构体。 一、结构体的形态 C源程序(struct.c):...

网友评论

    本文标题:C语言11 结构体

    本文链接:https://www.haomeiwen.com/subject/uoyrrftx.html