欧美日韩不卡一区二区三区,www.蜜臀.com,高清国产一区二区三区四区五区,欧美日韩三级视频,欧美性综合,精品国产91久久久久久,99a精品视频在线观看

C語(yǔ)言

C語(yǔ)言#undef 指令用法

時(shí)間:2025-05-06 12:06:33 C語(yǔ)言 我要投稿
  • 相關(guān)推薦

C語(yǔ)言#undef 指令用法

  引導(dǎo)語(yǔ):#undef 指令是可移除 identifier 的當(dāng)前定義。以下是百分網(wǎng)小編分享給大家的C語(yǔ)言#undef 指令用法,歡迎閱讀!更多精彩內(nèi)容請(qǐng)持續(xù)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!

  #undef 指令

  取消定義一個(gè)給定的 #define。

  例如有如下宏定義:

  #define LIMIT 40

  則指令

  #undef LIMIT

  會(huì)取消該定義。

  現(xiàn)在就可以重新定義LIMIT,以使它有一個(gè)新的值。即使開(kāi)始沒(méi)有定義LIMIT,取消LIMIT的定義也是合法的。如果想使用一個(gè)特定名字,但又不能確定前面是否已經(jīng)使用了該名字,為安全起見(jiàn),就可以取消該名字的定義。

  注意:#define 宏的作用域從文件中的定義點(diǎn)開(kāi)始,直到用 #undef 指令取消宏為止,或直到文件尾為止(由二者中最先滿足的那個(gè)結(jié)束宏的作用域)。還應(yīng)注意,如果用頭文件引入宏,那么,#define 在文件中的位置依賴(lài) #define 指令的位置。

  #include

  #define X 3

  #define Y X*3

  #undef X

  #define X 2

  int main (void)

  {

  printf ("Y = %d\n", Y);

  printf ("X = %d\n", X);

  return 0;

  }

  輸出結(jié)果:

  Y = 6

  X = 2

  #include

  #define X 3

  #define Y X*3

  #define X 2 //不可重復(fù)定義

  int main (void)

  {

  int z = Y;

  printf ("Y = %d\n", z);

  printf ("X = %d\n", X);

  return 0;

  }

  輸出結(jié)果:

  test.c:4:0: 警告: “X”重定義 [默認(rèn)啟用]

  test.c:2:0: 附注: 這是先前定義的位置

【C語(yǔ)言#undef 指令用法】相關(guān)文章:

C語(yǔ)言#pragma指令用法04-04

C語(yǔ)言的常用新指令有哪些04-12

c語(yǔ)言if語(yǔ)句的用法07-23

c語(yǔ)言鏈表的用法03-10

C語(yǔ)言#include用法05-27

C語(yǔ)言#define的用法05-01

C語(yǔ)言assert的用法06-02

c語(yǔ)言strcmp的用法02-18

C語(yǔ)言指針的用法07-02