当前位置: 首页 > backend >正文

【嵌入式C语言】七

8.4函数的声明和定义

  • 声明一个函数意味着向编译器描述函数名、返回值、参数个数和类型,但并不会为函数分配存储空间
  • 定义一个函数意味着在声明变量的同时还要有具体的实现,并且会为函数分配存储空间

8.5多源文件的函数声明和定义

8.6预处理指令#Include

#include 是一个预处理指令,预处理这个动作发生在编译之前:

作用是在预处理时,将文件中的全部文本内容全部复制粘贴到#Include所在的位置;

  • 标准库的头文件使用尖括号<>
  • 自定义的头文件使用双括号“”

8.7函数的作用域

静态函数符合模块化编程的思想,将模块内部的数据和函数隐藏起来,只对外呈现必要的信息。

9.1预处理指令#define

9.2宏定义中为什么要使用()

然而,如果想要将宏定义的值再乘一个数,就会计算出错

原因是没有加小括号,需要将宏定义进行修改

如果想要将变量改为表达式,也需要将变量加小括号

这样这个表达式才会计算正确

对于带参数的宏定义,一定要使用()

没有值的宏定义在条件编译预处理指令中使用

http://www.xdnf.cn/news/20325.html

相关文章:

  • 【IQA技术专题】 多尺度的transformer网络IQA:MUSIQ
  • GO语言的主要语法和特性
  • 跨平台游戏引擎 Axmol-2.8.1 发布
  • 突破反爬限制:动态IP轮换策略与实现
  • XXL-JOB源码分析(服务端)
  • “唐人街大赛第二届”题解
  • Spring Boot 3.x 的 @EnableAsync应用实例
  • 基于51单片机的信号发生器函数发生器设计
  • 存储卡备用区用尽,拷贝机设置坏块数量又有何意义?
  • hot100-贪心算法(附图解思路)
  • 项目升级--Nginx
  • 一种基于迁移学习的零样本故障诊断方法
  • WSL2环境下因服务器重装引发的SSH连接问题排查记录
  • fastapi通过sqlmodel连接Mysql实现crud功能
  • 如何进行神经网络的模型训练(视频代码中的知识点记录)
  • 2025最新超详细FreeRTOS入门教程:第一章 FreeRTOS移植到STM32
  • dp算法的种类
  • 制衣跟单高效管理软件推荐
  • linux 安全与防护,全方向讲解
  • 华清远见25072班I/O学习day6
  • Qt绘图功能学习笔记
  • 北斗导航 | 导航定位中的卡尔曼滤波算法:原理、公式及C代码详解
  • XXL-JOB基本使用
  • MyBatis高频问题-动态sql
  • 计算机网络:以太网中的数据传输
  • golang连接influxdb的orm操作
  • halcon-亚像素边缘提取教程
  • PyTorch 模型文件介绍
  • element-plus 表单校验-表单中包含多子组件表单的校验
  • (数据结构)哈希碰撞:线性探测法 vs 拉链法