av手机免费在线观看,国产女人在线视频,国产xxxx免费,捆绑调教一二三区,97影院最新理论片,色之久久综合,国产精品日韩欧美一区二区三区

C語言

C語言中define的使用方法

時間:2025-02-26 13:14:09 C語言 我要投稿
  • 相關(guān)推薦

C語言中define的使用方法

  其實在寫代碼的時候,關(guān)鍵字還是用的比較多的,這里主要就平常中用到的常用關(guān)鍵字進行總結(jié),便于更全面的理解其在代碼中的意圖。下文主要介紹C語言的關(guān)鍵字define的相關(guān)內(nèi)容。

  1 、防止一個頭文件被重復(fù)包含

  當(dāng)我們的程序很大很大時,比如超過20000行時,我們很可能沒有辦法對所有的文件都有清楚的了解,特別是.h的文件,那么我們怎么做才能避免include時重復(fù)包含呢 答案就是#define

  如下:

  a.h b.h c.h 三個文件

  a.h 內(nèi)容

  int variable_a;

  b.h 內(nèi)容

  #include "a.h"

  int variable_b;

  c.h內(nèi)容

  #include "a.h"

  #include "b.h"

  int c;

  那么c.h就包含了兩次a.h,那如何避免呢

  #ifndef A_H

  #define A_H

  //頭文件A

  #endif

  這樣就可以保證a.h只會被包含一次

  2、簡單替換

  #define MACRO_A 15

  后面出現(xiàn)的MACRO_A 都會被替換為15這個數(shù)

  3、帶參數(shù)的替換

  #define ABS( a ) ( ((a)>0) ? (a) : (-(a)) )

  可以使用宏替換來實現(xiàn)簡單的函數(shù)。

  以下是#define的高級用法

  4、高級用法

  define中的三個特殊符號:#,##,#@

  #defineConn(x,y) x##y

  #defineToChar(x) #@x

  #defineToString(x) #x

  (1)x##y表示什么?表示x連接y,舉例說:

  intn=Conn(123,456);/* 結(jié)果就是n=123456;*/

  char*str=Conn("asdf","adf");/*結(jié)果就是 str = "asdfadf";*/

  (2)再來看#@x,其實就是給x加上單引號,結(jié)果返回是一個const char。舉例說:

  char a = ToChar(1);結(jié)果就是a='1';

  做個越界試驗char a = ToChar(123);結(jié)果就錯了;

  但是如果你的參數(shù)超過四個字符,編譯器就給給你報錯了!

  error C2015: too many characters in constant :P

  (3)最后看看#x,估計你也明白了,他是給x加雙引號

  char* str = ToString(123132);就成了str="123132";

【C語言中define的使用方法】相關(guān)文章:

C語言中define的全部使用方法介紹10-15

C語言中volatile的使用方法09-30

C語言#define的用法08-19

c語言中指針的使用方法10-12

C語言中const關(guān)鍵字的使用方法10-02

C語言的關(guān)鍵字define的使用08-03

C語言中的整數(shù)06-16

C語言中的字符07-18

C語言宏定義#define的理解與資料梳理08-29