網站首頁 編程語言 正文
#if定義
#if和#endif是一組同時使用的,叫做條件編譯指令。#if與#define、#include等指令一樣是由預處理器這個強大的工具處理的,預處理器可以在編譯前處理c程序。
#if使用
#if的后面接的是表達式
#if (MAX == 10)||(MAX == 20) code... #endif
它的作用是:如果(MAX == 10)|| (MAX == 20)
成立,那么編譯器就會把其中的#if 與 #endif之間的代碼編譯進去(注意:是編譯進去,不是執行!!)
#if defined的使用
#if后面接的是一個宏。
#if defined (x) ...code... #endif
這個#if defined它不管里面的“x”的邏輯是“真”還是“假”它只管這個程序的前面的宏定義里面有沒有定義“x”這個宏,如果定義了x這個宏,那么,編譯器會編譯中間的…code…否則不直接忽視中間的…code…代碼。
另外 #if defined(x)也可以取反,也就用 #if !defined(x)
ifdef的使用
#ifdef的使用和#if defined()的用法一致
#ifndef又和#if !defined()的用法一致。
結尾
最后強調兩點:
- 第一:這幾個宏定義只是決定代碼塊是否被編譯!
- 第二:別忘了#endif
原文鏈接:https://blog.csdn.net/szm1234/article/details/116589386
相關推薦
- 2022-11-08 Python??Pandas教程之使用?pandas.read_csv()?讀取?csv_pytho
- 2022-04-12 python?獲取list?長度_python
- 2023-04-08 react中實現拖拽排序react-dnd功能_React
- 2023-12-08 IDEA中, Maven不顯示插件 mybatis-generator
- 2022-03-27 基于rsync寫腳本實現多節點多服務器文件一鍵同步的方法_相關技巧
- 2022-12-06 React運行機制超詳細講解_React
- 2022-05-25 excel動態生成Sql語句
- 2022-07-27 Python編寫條件分支代碼方法_python
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支