吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C語言中最常見的宏定義寫法

學益得智能硬件 ? 來源: 學益得智能硬件 ? 2024-10-28 11:12 ? 次閱讀

如果讓你用C語言寫個宏定義,我相信大部分同學順手就能寫出define。

這也是C語言中最常見的宏定義寫法,這樣的代碼在預處理的時候直接被替換。

在C語言中,還有兩種宏定義容易被忽略。

一種是預定義宏,顧名思義,就是別人預先定義好的,拿過來用就行。

常見的比如file line date time 分別表示文件名、行號、日期和時間,主要就是讓用戶用起來更方便。

還有一種定義宏的方式,是在編譯的時候,以 gcc 為例。

#include 


int main()
{
    printf("%d
", A);
    
    return 0;
}

我們在代碼中輸出 A,如果代碼直接拿過來編譯,肯定會報錯,A 既不是變量也不是常量,屬于未定義。

但是如果在編譯的時候,加上 -D 選項,后面跟上 A,可以給他賦值,也可以不賦值,那編譯就能順利通過,A默認的值是 1。

gcc test.c -o test -D A

這個用法的使用場景很多,比如跨平臺,比如加一些調試選項,如果定義了 DEBUG,就輸出下面的調試信息,編譯的時候,通過 -D 選項,就能控制調試信息是否輸出,可以避免項目發

布的時候,再去一行一行刪除調試信息。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7614

    瀏覽量

    137707
  • 代碼
    +關注

    關注

    30

    文章

    4825

    瀏覽量

    69043
  • 宏定義
    +關注

    關注

    0

    文章

    51

    瀏覽量

    9051
  • define
    +關注

    關注

    0

    文章

    16

    瀏覽量

    3768

原文標題:不用define,如何定義宏

文章出處:【微信號:學益得智能硬件,微信公眾號:學益得智能硬件】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    C語言定義使用技巧

    寫好C語言,漂亮的定義很重要,使用定義可以防止出錯,提高可移植性,可讀性,方便性等等。下面列
    發表于 07-29 09:35 ?1135次閱讀

    【RT-Thread學習筆記】一種C語言定義寫法

    【RT-Thread學習筆記】一種C語言定義寫法
    的頭像 發表于 07-30 13:41 ?2397次閱讀
    【RT-Thread學習筆記】一種<b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>宏</b><b class='flag-5'>定義</b>的<b class='flag-5'>寫法</b>

    C語言中常用的定義

    寫好C語言,漂亮的定義很重要,使用定義可以防止出錯,提高可移植性,可讀性,方便性等等。下面列
    發表于 10-18 10:05 ?1740次閱讀

    C語言中定義的用法和使用場景

    C語言中,預定義是由編譯器提供的一組特殊標識符,可以在程序中直接使用,無需進行額外的定義
    發表于 08-16 16:12 ?539次閱讀

    C語言中定義的應用

    C語言中定義是一種預處理指令,用于在代碼中定義和使用常量、函數或代碼片段的替代。
    發表于 08-17 15:33 ?903次閱讀

    C語言中定義的使用技巧

    #define命令是C語言中的一個定義命令,它用來將一個標識符定義為一個字符串,該標識符被稱為
    發表于 09-05 10:12 ?1305次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言中</b><b class='flag-5'>宏</b><b class='flag-5'>定義</b>的使用技巧

    labview中有類似于c語言中定義

    如題,labview中有類似于c語言中定義嗎 define xxx XXX。。。多謝~
    發表于 10-05 15:04

    C語言中

    定義是我們C語言學習中非常重要的內容。一些基礎的用法大家都比較清楚了,我們簡單總結一下。1.定義
    發表于 12-13 15:32

    c語言中常用的定義有哪些?

    c語言中常用的定義有哪些?
    發表于 04-28 06:01

    C語言中是什么

    第五章 性能優化5.1 使用定義  在C語言中是產生內嵌代碼的唯一方法。對于嵌入式系統而言,為了能達到性能要求,
    發表于 12-15 08:20

    匯總和深挖C語言中定義所有的知識點

    知識點在剛開始接觸時,我感覺比較難懂、不好理解,那么以后不論我花多長時間去研究這個知識點,心里會一直認為該知識點比較難,也就是說第一印象特別的重要。 就比如 C 語言中定義,好像跟
    的頭像 發表于 05-03 18:31 ?2766次閱讀
    匯總和深挖<b class='flag-5'>C</b><b class='flag-5'>語言中</b><b class='flag-5'>宏</b><b class='flag-5'>定義</b>所有的知識點

    C語言中的__attribute__定義之section屬性

    C語言中的 __attribute__之section屬性文章目錄C語言中的 __attribute__
    發表于 11-16 18:21 ?47次下載
    <b class='flag-5'>C</b><b class='flag-5'>語言中</b>的__attribute__<b class='flag-5'>宏</b><b class='flag-5'>定義</b>之section屬性

    C語言中定義

    #define命令是C語言中的一個定義命令,它用來將一個標識符定義為一個字符串,該標識符被稱為
    的頭像 發表于 09-28 16:05 ?3511次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言中</b>的<b class='flag-5'>宏</b><b class='flag-5'>定義</b>

    c語言定義可以嵌套嗎?

    c語言定義可以嵌套嗎? C語言
    的頭像 發表于 09-04 17:38 ?3277次閱讀

    c語言帶參數的定義

    c語言帶參數的定義? C語言
    的頭像 發表于 09-04 17:45 ?2494次閱讀
    百家乐园棋牌| 在线真人娱乐| 送彩金百家乐平台| 百家乐美国玩法| 可以玩百家乐的博彩公司| 百家乐体育宝贝| 网上百家乐分析软件| 澳门百家乐怎么赢钱| 百家乐黄金城游戏大厅| 博发百家乐游戏| 百家乐游戏卡通| 杭州太阳城假日酒店| 爱玩棋牌官方下载| 台中市| 百家乐官网棋牌游戏正式版| 网站百家乐官网博彩| 鼎尚百家乐官网的玩法技巧和规则| 凯斯网百家乐官网的玩法技巧和规则 | 百家乐官网烫金筹码| 运城百家乐官网蓝盾| 宝龙百家乐官网的玩法技巧和规则| 百家乐怎么压对子| 神话百家乐的玩法技巧和规则| 二八杠生死门口诀| 战神国际娱乐| 百家乐官网全自动分析软件| 百家乐官网补第三张牌规则| 优博百家乐现金网| 试玩百家乐代理| 德州扑克书籍| 任你博百家乐官网现金网| 巴特百家乐官网的玩法技巧和规则 | 赌百家乐的玩法技巧和规则 | 机械百家乐官网技巧| 至尊百家乐20111110| 水果机技巧规律| 古蔺县| 利高百家乐官网的玩法技巧和规则 | 网上百家乐优博| 济州岛百家乐的玩法技巧和规则 | 聚众玩百家乐官网的玩法技巧和规则|