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

嵌入式开发学习日志Day13

第九章 预处理命令

前面加“#”的都为预处理命令;

预处理命令是无脑的文本替换;

一、宏定义

1、不带参数的宏定义

一般形式为:

                #define  标识符  字符串

(谷歌规定):所有的宏名均大写,便于区分;

    写宏时,左右两边加括号,防止出错; 

    宏可以嵌套使用;

 【gcc - E】————只做预处理,不编译;

【-omain.i】————输出main.i文件,预处理的结果;

 2、带参数的宏定义(带参宏)

  一般定义形式:

        #define  宏名 (参数表)字符串

eg:define ADD(a,b)    (a)+(b)

 调用:printf("%d\n",ADD(3,4));

注意:带参宏的参数不用加数据类型;

eg:用带参宏计算三角形的面积;

程序:

 二、“文件包含”处理

        include命令的使用;     

eg:#include <stdio.h>

文件名可以写在<    >或者“  ”中进行表示;

文件名内容可以由绝对路径和相对路径构成;

        <   >和“  ”在用绝对路径时用法相同;

        在表示相对路径时:<  >会在//usr/include/下去寻找;

                                        “    ”会在当前的main.c下去寻找;

三、条件编译

 1.若表达式为真,可运行;为假,注释(非零即为真)

#if  (表达式)
#endif

2.用于调试

#ifdef 标识符
//指一个宏,若被定义执行程序段1,不执行程序段2;未被定义,则相反程序段1
#else程序段2
#endif

3.用于解决对同一头文件可能多次包含,导致被重新定义引发编译错误

#ifndef程序段1
#else程序段2
#endif


 在使用时,每个头文件都参照下面格式去书写

#ifndef    FUNC_H
#define FUNC_H
内容
...
...
...#endif

第十章  指针

一、地址和指针的概念

        指针是用来装地址的数据类型;

定义指针变量的一般形式:

基类型   *指针变量名   eg:int *p;

基类型————表示指针中装什么类型的地址;

int i = 10;
int *p;
p = &i;

或者可以

int i = 10;
int *p = &i;

成为指针变量P的指向变量;

注意:

*p 就是  i  本身,————指针的间接访问;

int *p中————*时类型说明符;

*p 的数据类型就是基类型;

 在64位系统下,所有的地址都占8个字节;

 在32位系统下,所有的地址都占4个字节;

 当&和*放在一起时,可以被抵消,但是必须注意*后必须为指针参数;

指针运算要求其操作数必须是指针;

 

void swep (int *a,int *b);
int *t;
*t = *a;

其中*t被称为野指针;

野指针:指针指向的位置是不可知的;

指针运算三大步:

  1. 根据指针变量的值去内存中定位
  2. 从定位处开始向后偏移sizeof(基类型)个字节
  3. 将偏移后的那部分内存空间当作一个基类型变量来看

练习:

(1)计算三个数的和;

程序:

 (2)找出三个数中的最大值和最小值;

 程序:

 (3)交换连个变量的值;

程序:

 

相关文章:

  • 2025年最新Linux的Redis主从集群搭建
  • [C++] 小游戏 决战苍穹
  • 深度学习系统学习系列【4】之反向传播(BP)四个基本公式推导
  • 12. 多线程(9) --- 案例:定时器
  • DeepWiki 是什么,怎么使用
  • SIFT算法详细原理与应用
  • 力扣第448场周赛
  • Android学习总结之GetX库篇(场景运用)
  • 蓝桥杯单片机备战笔记
  • Easy云盘总结篇-回收站
  • 常见的位置编码 Positional Encoding
  • 1. std::result_of是什么?为什么它出现?
  • c++存储持续性和链接性
  • Netty的内存池机制怎样设计的?
  • Webug4.0靶场通关笔记15- 第19关文件上传(畸形文件)
  • 服务器端的准备工作
  • 求解器介绍之gurobi
  • Linux电源管理(6)_Generic PM之挂起功能
  • 【自然语言处理与大模型】LlamaIndex的数据连接器和对话引擎
  • 二、Python变量基础(2)
  • “五一”假期国内出游3.14亿人次,国内游客出游总花费1802.69亿元
  • 巴菲特掌舵伯克希尔60年后将卸任CEO,库克:认识他是人生中最珍贵的经历之一
  • 国铁集团:全国铁路旅客发送量连续3天同比增幅超10%
  • 人民日报今日谈:为何重视这个“一体化”
  • 美国经济萎缩意味着什么?关税政策如何反噬经济?
  • 李公明︱一周书记:数字文化的乌托邦精神与……算法时代的生存指南