一、现象:

首先在文件1.c对应的头文件1.h中有

union  _uintbyte
{UINT16 _uint;UINT8 _uchar[2]; } Angle;

如果想在文件2.c中调用变量Angle就必须用到变量的外部调用,也就是想到用extern 。

然而,在文件2.c对应的头文件2.h中这样写:

1、

extern _uintbyte  Angle;

编译通不过。

2、

extern  union  _uintbyte
{UINT16 _uint;UINT8 _uchar[2]; } Angle;          

同样编译通不过。

二、原因:

extern后面必须跟数据类型,使用共用体名称(如_uintbyte)是无效的。

三、解决方法:

将union _uintbyte使用typedef 进行类型定义,即:

在头文件3.h中定义:

typedef  union  _uintbyte
{UINT16 _uint;UINT8 _uchar[2];
};

在文件1.c中引用3.h,在1.c对应的头文件1.h中:

_uintbyte  Angle;

那么在文件2.c中也引用3.h,在2.c对应头文件2.h中:

extern  _uintbyte  Angle;

编译通过!!!!

Union定义变量进行外部调用的方法相关推荐

  1. php中请写出定义变量的两种方法,php定义变量几种

    1.定义常量define("CONSTANT", "Hello world."): 常量只能包含标量数据(boolean,integer,float 和 str ...

  2. C/C++中struct结构体定义变量的3种方法及初始化

    本博客整理自http://blog.csdn.net/zunfo/article/details/51494631 1.struct结构体定义 1.1.先定义结构体,然后再定义结构体变量 struct ...

  3. Scala基础:定义变量和逻辑判断语句以及方法和函数

    定义变量和逻辑判断语句 package com.zy.scalaimport scala.collection.immutableobject ScalaDemo {def main(args: Ar ...

  4. linux文件的定义变量的值,linux shell 自定义函数方法(定义、返回值、变量作用域)...

    一.定义shell函数(define function) 语法: [ function ] funname [()] { action; [return int;] } 说明: 1.可以带functi ...

  5. python 定义变量_用python解决动态的定义变量名(并给其赋值方法:大数据处理)...

    前言: 今天为大家带来的内容是:用python解决动态的定义变量名(并给其赋值方法:大数据处理)具有很好的参考价值,希望对大家有所帮助.喜欢本文内容的记得点赞转发收藏不迷路哦!!! 最近消费kafka ...

  6. oracle 定义变量及使用方法,Oracle pl/sql变量定义和使用详解

    一.变量介绍 在编写pl/sql程序时,可以定义变量和常量:在pl/sql程序中包括有: 1).标量类型(scalar) 2).复合类型(composite) --用于操作单条记录 3).参照类型(r ...

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

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

  8. Python定义变量的方法

    什么是变量 我们只要与生活中的数学做类型就可以清楚的了解什么是变量 在Python中,变量的概念基本上和初中代数的方程变量是一致的.例如,对于方程式 y=x*x ,x就是变量.当x=2时,计算结果是4 ...

  9. java类和接口实例_Java定义泛型接口和类的方法实例分析

    本文实例讲述了Java定义泛型接口和类的方法.分享给大家供大家参考,具体如下: 一 点睛 所谓泛型:就是允许在定义类.接口指定类型形参,这个类型形参在将在声明变量.创建对象时确定(即传入实际的类型参数 ...

最新文章

  1. 这个神奇的网站提供各种图的代码供您参考!
  2. 2021春季学期-创新设计与实践-课程结构设计
  3. linux scp 断点续传 rsync 命令简介
  4. yii2 设置的缓存无效,返回false,不存在
  5. excel插入一列日期 pandas_将日期和时间从Excel拉到Pandas并将其组合为时间戳
  6. 浙商银行携手神策数据,数字化转型提升客户体验
  7. ElasticSearch 2 (37) - 信息聚合系列之内存与延时
  8. 使用 Task 简化异步编程
  9. Mac IDEA 实用快捷键大全(持续更新)
  10. Android设计UI界面
  11. python--编写程序:实现乐手弹奏乐器,乐手可以弹奏不同的乐器而发出不同的声音------使用类的封装继承多态的问题/使用面向对象的思想,设计自定义类,描述出租车和家用轿车的信息
  12. tomcat如何调优
  13. 计算机基础中如何属性隐藏,-XP系统如何显示隐藏的文件夹
  14. 文字很浅显,但道理却不易懂
  15. 2D中小游戏开发C++游戏教程
  16. java无穷大 inf_Java正无穷大、负无穷大以及NaN
  17. UiPath中Assign活动的作用是什么
  18. python code mudule,pipe,stdin,stdou,IMPORTANT
  19. mycat Mycat监控工具
  20. MySQL Study之--Mysql数据库备份工具(mysqldump)

热门文章

  1. python网页前端和react有什么区别_Vue与React两个框架的粗略区别对比
  2. python如何启动app_Python手机app爬虫|Airtest连接多个手机的时候,如何启动APP-start_app...
  3. Cell子刊:MRI有助于揭示睡眠之谜
  4. 特斯拉中国召回20万辆问题汽车:存在硬件风险,部分引擎盖可能意外打开
  5. 研发日烧6400万的百度发出新讯号,李彦宏:自动驾驶订单已是全球第一
  6. 三手火箭载二手飞船送四名平民上太空,马斯克负责创造历史,另一位富豪出钱买单...
  7. 看完苹果这场最新发布会,我只能说:太sao了
  8. MindCon | 杭京宁三大战场即将启动,火速来战!
  9. 代码变油画,精细到毛发,这个前端小姐姐只用HTML+CSS,让美术设计也惊叹丨GitHub热榜...
  10. React UI 库:React Suite 3.7.8 版本更新