news 2026/10/15 0:35:54

C语言 条件编译宏

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C语言 条件编译宏

一、具体代码与分析如下

#include <stdio.h> /* 1.C语言的条件编译宏是预处理阶段的指令,用于根据指定条件决定代码段是否参与编译; 2.#ifdef MACRO/#endif:判断 MACRO 是否被#define定义; 3.#ifndef MACRO/#endif:判断 MACRO 是否未被定义; 4.#if/#elif/#else/#endif:判断常量表达式是否为真; 5.#if defined(MACRO):结合#if和定义判断。 */ int main() { /*********************************/ #undef DEBUG #define DEBUG #ifdef DEBUG printf("#define DEBUG 输出\n"); #endif //结束条件编译块,是必备的闭合指令 /*********************************/ #undef DEBUG1 #ifndef DEBUG1 printf("#undef DEBUG1 输出\n"); #endif //结束条件编译块,是必备的闭合指令 /*********************************/ #define PLATFORM 3 //#undef PLATFORM #if PLATFORM == 1 #define OS "Linux" #elif PLATFORM == 2 #define OS "Windows" #elif PLATFORM == 3 #define OS "macOS" #else #define OS "Unknown" #endif /* #define PLATFORM 1 输出OS为:"Linux" #define PLATFORM 2 输出OS为:"Windows" #define PLATFORM 3 输出OS为:"macOS" 都不定义 输出OS为:"Unknown" */ printf("OS:%s\n",OS); /*********************************/ //#define ARMv7 #define ARMv8 #if defined(ARMv7) || defined(ARMv8) #define HAS_CAN 1 #define HAS_ETH 1 #elif defined(x86) #define HAS_CAN 0 #define HAS_ETH 0 #endif /* #define ARMv7 或 #define ARMv8输出OS为:"HAS_CAN:1,HAS_ETH:1" #define x86 输出OS为:"HAS_CAN:0,HAS_ETH:0" 都不定义 输出OS为:"Unknown" */ printf("HAS_CAN:%d,HAS_ETH:%d\n", HAS_CAN, HAS_ETH); return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/15 2:44:46

GDAL 实现矢量裁剪

前言 ❝ 矢量数据作为数据处理的半壁江山&#xff0c;在日常工作中涉及到多种操作&#xff0c;矢量数据裁剪尤其具有代表性和重要性&#xff0c;是常用操作&#xff0c;核心原理为从指定数据中提取出目标范围。在之前的文章中讲了如何使用GDAL或者ogr2ogr工具将txt以及csv文本数…

作者头像 李华
网站建设 2026/10/15 21:23:09

华为研究团队突破代码修复瓶颈,8B模型击败32B巨型对手!

这项由华为技术有限公司、南洋理工大学、香港大学和香港中文大学联合完成的突破性研究发表于2026年1月&#xff0c;论文编号为arXiv:2601.01426v1。研究团队通过一种名为SWE-Lego的创新训练方法&#xff0c;让相对较小的8B参数模型在软件代码自动修复任务上的表现超越了许多32B…

作者头像 李华
网站建设 2026/10/14 19:51:57

git创建远程分支、分支合并、删除分支

# git创建远程分支 #查看分支 git branch -a#创建git分支 git checkout -b branch_name#push到远程仓库 git push -u origin branch_name# git 合并分支 # 标准合并&#xff08;保留分支历史&#xff09; git checkout master # 先切到要「接受」变更的分支 git pull …

作者头像 李华
网站建设 2026/10/14 23:02:22

3.2 FileStream

1.FileStream1.FileStream FileStream操作的是字节数组, 读写文本需配合Encoding(如: UTF8)转换1).构造函数这是使用FileStream的第一步, 用于打开/创建文件并指定操作模式// 参数&#xff1a;文件路径、文件模式、文件访问权限、文件共享方式 FileStream fs new FileStream(&…

作者头像 李华
网站建设 2026/10/15 11:15:14

实战案例:汽车数字孪生车间的提示工程应用

从物理车间到数字孪生&#xff1a;提示工程如何让汽车制造“会思考”&#xff1f; 关键词 数字孪生车间、提示工程、AI智能制造、故障预测、生产优化、自然语言交互、数据闭环 摘要 当汽车制造车间从“物理实体”进化为“数字孪生”&#xff0c;如何让这个“虚拟双胞胎”不仅能…

作者头像 李华