首页 > 其他分享 >举例: 在C语言 使用结构体和联合体,设计应用全局变量

举例: 在C语言 使用结构体和联合体,设计应用全局变量

时间:2022-12-08 16:38:13浏览次数:42  
标签:1BYTES float 联合体 uint8 C语言 time 全局变量 gps

/*举例:在C语言  使用结构体和联合体,设计应用全局变量*/
#include "stm32f1xx_hal.h"

typedef  struct/*定义 GSP结构体*/
{
    uint8_t  gps_year_time;   /*,单位 年  ,占1BYTES*/
    uint8_t  gps_month_time;  /*,单位 月  ,占1BYTES*/
    uint8_t  gps_day_time;    /*,单位 日  ,占1BYTES*/
  uint8_t  gps_hour_time;   /*,单位 时  ,占1BYTES*/
  uint8_t  gps_minute_time; /*,单位 分  ,占1BYTES*/
  uint8_t  gps_second_time; /*,单位 秒  ,占1BYTES*/    

    float  longitude_angle;     /*经度*/
    float  altitude_angle;      /*经度*/
} GPSDef;

typedef  struct/*定义 太阳位置结构体*/
{
  float  solar_zenith_angle; /*太阳高度角,单位 弧度,占4BYTES*/
    float  solar_azimuth_angle;/*太阳方位角,单位 弧度,占4BYTES*/
    float  apparent_solar_time; /*太阳方位角,单位 秒  ,占4BYTES*/
} sunPositionDef;


typedef union/*定义联合体,支持按字节访问和按结构体访问*/
{
  uint8_t  bytes[128];
    struct  
    {
      GPSDef gps_var;
        sunPositionDef sunPosition_var;
    } words;
} globalVariableDef;
globalVariableDef  globalVariable;//定义全局变量

全局变量使用举例

globalVariable.words.gps_var.gps_day_time =12;//设置为12月

 

标签:1BYTES,float,联合体,uint8,C语言,time,全局变量,gps
From: https://www.cnblogs.com/excellentHellen/p/16966450.html

相关文章

  • C语言-求1!+2!+3!+4!+5!...+10!
    #include<stdio.h>intmain{inta=0;intb=1;intsum+0;for(a=1;a<11;a++){b=b*a;sum=sum+b;}printf("%d",sum);return0;}......
  • c语言分支与循环pta练习题
    7-7高空坠球皮球从某给定高度自由落下,触地后反弹到原高度的一半,再落下,再反弹,……,如此反复。问皮球在第n次落地时,在空中一共经过多少距离?第n次反弹的高度是多少?输入格......
  • 【C语言】* 和 & 认识、对解引用(*)认识、* & 的应用、通过指针交换变量值、指针变量
    ......
  • 自学C语言-第一天!
    C可能是最广为人知的编程语言,C是一门非常底层的编程语言。下载安装​​mingw64​​点击Files:下拉找到MinGW-W64GCC-8.1.0,点击下载​​x86_64-posix-sjlj:​​解压文件......
  • 环境(局部)变量与全局变量的使用
     postman中的变量类型环境变量:实质是局部变量,理论上只能在某个请求中使用,使用时先添加环境变量,然后在窗口右上角选择创建的环境变量,然后在接口地址中或参数值中使用{{......
  • 在实际应用中联合体union的妙用
        关键字union,又称为联合体、共用体,联合体的声明和结构体类似,但是它的行为方式又和结构体不同,这里的行为方式主要指的是其在内存中的体现,结构体中的成员每一个占......
  • C语言条件语句中调用函数并赋值时的一个小坑
    在C语言中,如果在条件语句中赋值,一定要注意符号优先级的问题,比较符号是比赋值符号先执行的。如果同时还调用函数,并将返回值赋给变量,更容易产生错误。看下面的代码:intincr......
  • C语言中的强符号和弱符号
    摘自:https://blog.csdn.net/ASJBFJSB/article/details/81267934一、强弱符号强弱符号针对的是处于同一工程下在不同源文件下定义的全局变量符号,链接器只处理global的符号......
  • 喝汽水--C语言
    题目名称:喝汽水问题题目内容:喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给20元,可以多少汽水(编程)分析:1.20元能喝20瓶2.2个空瓶能换1瓶汽水,剩下的空瓶:empty/2+empty%代码方法1:#inc......
  • 二叉树入门到进阶(下一篇讲红黑树)——c语言刷题合集
    目录二叉树概念二叉树的遍历方式DFS(前序中序后序遍历)144.二叉树的前序遍历递归解法迭代解法94.二叉树的中序遍历145.二叉树的后序遍历层序遍历--队列的作用102.二叉......