为了账号安全,请及时绑定邮箱和手机立即绑定
首页 手记 【九月打卡】第18天 物联网/嵌入式工程师学习笔记18

【九月打卡】第18天 物联网/嵌入式工程师学习笔记18

2022.09.22 22:33 28浏览

【九月打卡】第18天 物联网/嵌入式工程师学习笔记18

课程信息

课程内容概述

1. 注释

功能: 判断宏名是否为真,为真编译C语言代码1,否则编译C语言代码2

格式:
#if  宏名

   C语言1;
#else 
        
C语言2;
#endif

2. 宏是否定义的判断

2.1 概述

//if no define
#ifndef 宏名 判断宏名是否没有定义
C语言语句
#endif
功能:若是没有定义,会执行对应的C语言语句,若是定义了则不回执行

2.2 代码示例

#include <stdio.h>
#define DEBUG 

int main(int argc, const char *argv[])
{
        int a[5] = {10,20,30,40,50};        
        int i = 0;
        int *p = a;
#ifndef DEBUG     //若是DEBUG没有定义,执行a[i],否则执行p[i]
        for(i = 0;i < 5;i++)
        {
                printf("a[%d] = %d\n",i,a[i]);        
        }
#else
        for(i = 0;i < 5;i++)
        {
                printf("p[%d] = %d\n",i,p[i]);        
        }
#endif
        return 0;
}

运行结果

p[0] = 10
p[1] = 20
p[2] = 30
p[3] = 40
p[4] = 50

学习心得

C语言中的条件编译,这个特性乍一看好像用处不大,类似于注释,但是实际工程中,有时候还是很有用的。

课程截图

1. 命令行输入参数的代码演示

图片描述

2. 宏判断的#的代码演示

图片描述

点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
手记
粉丝
5
获赞与收藏
39

关注TA,一起探索更多经验知识

同主题相似文章浏览排行榜

风间影月说签约讲师

50篇手记,涉及Java、MySQL、Redis、Spring等方向

进入讨论

Tony Bai 说签约讲师

146篇手记,涉及Go、C、Java、Python等方向

进入讨论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消