0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

stm32中常用关键字的使用方法

嵌入式应用开发 来源:嵌入式应用开发 作者:嵌入式应用开发 2022-03-16 16:35 次阅读

extern,可以在一个文件中引用另一个文件中定义的变量或者函数,下面就结合具体的实例。

首先,引用同一个文件的变量,先写一个简单的函数。

#include
int func();
int main()
{
func(); //1
printf("%d",num); //2
return 0;
}
int num = 3;
int func()
{
printf("%d\n",num);
}

这里一共定义了两个函数,一个主函数一个子函数,子函数里直接打印的num的数据,要打印数据首先要找到定义的数据,这里定义的num是全局变量所以可以直接打印数据。

如果我们用extern进行定义数据时需要采用全局变量定义,在其他地方使用,比如我们在主函数定义了一个extern变量我们在其他地方使用时需要线对变量进行赋值操作,否则找不到相关的num。

#include
int func();
int main()
{
func(); //1
extern int num;
printf("%d",num); //2
return 0;
}
int num = 3;
int func()
{
printf("%d\n",num);
}

下面再说extern与const使用问题 。

如果我们要使用一个全局变量而且是不能改变的,那我们需要用const配合使用,代码如下:

#include
int main()
{
extern const int num;
printf("%d",num);
return 0;
}

子函数

#include
const int num=5;
void func()
{
printf("fun in a.c");
}

这里我们在主函数定义了一个extern const变量,需要在子函数的全局变量中定义const int num=5;这样就可以使用。

extern除了引用另一个文件中的变量外,还可以引用另一个文件中的函数,引用方法和引用变量相似。

mian.c

#include
int main()
{
extern void func();
func();
return 0;
}
common.c
#include
const int num=5;
void func()
{
printf("fun in a.c");
}

这里main函数中引用了b.c中的函数func。因为所有的函数都是全局的,所以对函数的extern用法和对全局变量的修饰基本相同,需要注意的就是,需要指明返回值的类型和参数
审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2274

    文章

    10930

    浏览量

    358090
  • 参数
    +关注

    关注

    11

    文章

    1862

    浏览量

    32464
  • 函数
    +关注

    关注

    3

    文章

    4350

    浏览量

    63074
收藏 人收藏

    评论

    相关推荐

    C语言关键字分别发生在哪个阶段

    以下C语言关键字,分别发生在哪个阶段? 第一个,define。 首先得纠正一下,define 并不是C语言里面的关键字,即使加了井号,也不是。 define 属于C语言的预处理指令,很显然,它发生
    的头像 发表于 11-24 10:31 254次阅读

    C语言关键字--typedef

    C语言关键字使用方法学习指南!
    的头像 发表于 10-07 12:44 354次阅读

    示波器高压探头使用方法

    示波器高压探头是一种用于测量高电压信号的仪器,通常用于高压电源、电机、变压器等电气设备的测试。以下是示波器高压探头的详细使用方法
    的头像 发表于 10-03 16:43 600次阅读

    使用边缘AI和Sitara处理器进行关键字检测

    电子发烧友网站提供《使用边缘AI和Sitara处理器进行关键字检测.pdf》资料免费下载
    发表于 09-02 11:30 0次下载
    使用边缘AI和Sitara处理器进行<b class='flag-5'>关键字</b>检测

    Keil变量不被初始化方法

    介绍使用Keil,IAR和CubeIDE的操作方法,本文中所用芯片为:STM32G431RBT6。Keil没有这个关键字,而且会有版本的区别,下面分别介绍:为了防
    的头像 发表于 08-30 11:47 862次阅读
    Keil<b class='flag-5'>中</b>变量不被初始化<b class='flag-5'>方法</b>

    光纤收发器的使用方法和注意事项

    光纤收发器作为光纤通信系统关键设备,其正确的使用方法和注意事项对于确保网络传输的稳定性和可靠性至关重要。光纤收发器作为光纤通信系统关键
    的头像 发表于 08-26 15:20 1316次阅读

    快速掌握C语言关键字

    C语言中的32个关键字你知道多少个呢?根据关键字的作用分为四类:数据类型关键字、控制语句关键字、存储类型关键字和其它
    的头像 发表于 07-06 08:04 449次阅读
    快速掌握C语言<b class='flag-5'>关键字</b>

    浅谈锡膏的储存及使用方法

    锡膏(焊锡膏)是电子组装过程中常用的材料,它的储存和使用方法对保证焊接质量和性能至关重要。以下是详细的储存及使用方法
    的头像 发表于 06-27 10:02 1125次阅读

    inline关键字被优化导致此类函数被布局在flash内,怎么处理?

    问题解决。 但是,希望乐鑫官方把idf内源码的inline关键词都替换为__attribute((always_inline)),因为inline关键字不可靠! 期待下次idf版本更新能解决此bug,自己修改idf源码真的是权
    发表于 06-21 12:03

    电流探头的使用方法及测量技巧

    电流探头是电子测量领域中常用的工具,用于测量电路的电流。它们通常用于连接示波器或多用途数字测量仪器,以便观测和分析电流波形。本文将介绍电流探头的使用方法以及一些测量技巧,帮助您更好地
    的头像 发表于 06-17 13:42 785次阅读
    电流探头的<b class='flag-5'>使用方法</b>及测量技巧

    smt贴片加工常用的检测修理方法有哪些

    一站式PCBA智造厂家今天为大家讲讲SMT贴片加工常见问题有哪些?SMT贴片加工常用的检测修理方法。随着电子产品的不断发展,SMT贴片加工成为电子制造业中常见且关键的工艺。然而,贴片加
    的头像 发表于 06-13 09:32 677次阅读

    可编程电源使用方法

    的使用技巧。 关键词:可编程电源;使用方法;操作步骤;注意事项 1. 引言 可编程电源是一种广泛应用于电子设备测试、研发和生产领域的电源设备。它具有输出电压、电流可调,输出波形可编程等特点,能够满足各种电子设备的测试需求。本文将详
    的头像 发表于 06-10 15:29 1203次阅读

    gis中常用的空间分析方法

    GIS中常用的空间分析方法 GIS(地理信息系统)是一种用于收集、存储、处理、分析和展示地理数据的技术。空间分析是GIS的核心部分,它包括一系列方法和技术,用来研究地理空间数据之间的关系和模式。本文
    的头像 发表于 02-25 13:44 6187次阅读

    简单总结一下嵌入式C++中常见的错误形式

    对于 C++ 类,一些关键字只要写在 .h 中就好,cpp 中就不用再加上了,比如 virtual、static 等关键字,如果在 cpp 多写,编译器会报错。
    的头像 发表于 02-23 09:40 613次阅读

    TSMaster 序列发送模块在汽车开发测试的应用

    。本文重点和大家分享一下关于TSMaster序列发送模块的使用。本文关键字:序列发送、无代码发送目录Catalog1.序列发送模块的使用方法2.序列发送模块实例序列
    的头像 发表于 02-19 14:00 778次阅读
    TSMaster 序列发送模块在汽车开发测试<b class='flag-5'>中</b>的应用