Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn Cancel Macro | Macros
C Preprocessing

bookCancel Macro

The #undef directive in the C programming language is used to undefine a previously declared macro created using the #define directive.

#undef <name_of_macro>

This allows you to remove a macro from the current scope so that its name can be redefined or no longer used in your program.

Macros are global: Macros operate at the preprocessor level, and their scope extends to the entire file where they are defined. Once redefined, the new value will be used wherever that macro appears later in the code.

main.c

main.c

copy
1234567891011
#include <stdio.h> #define MAX 100 int main() { printf("MAX = %d\n", MAX); // MAX = 100 #undef MAX // remove macros MAX #define MAX 200 // define new macros MAX printf("MAX = %d\n", MAX); // MAX = 200 return 0; }
Everything was clear?

How can we improve it?

Thanks for your feedback!

SectionΒ 2. ChapterΒ 4
single

single

Ask AI

expand

Ask AI

ChatGPT

Ask anything or try one of the suggested questions to begin our chat

Suggested prompts:

Summarize this chapter

Explain the code in file

Explain why file doesn't solve the task

close

Awesome!

Completion rate improved to 5.56

bookCancel Macro

Swipe to show menu

The #undef directive in the C programming language is used to undefine a previously declared macro created using the #define directive.

#undef <name_of_macro>

This allows you to remove a macro from the current scope so that its name can be redefined or no longer used in your program.

Macros are global: Macros operate at the preprocessor level, and their scope extends to the entire file where they are defined. Once redefined, the new value will be used wherever that macro appears later in the code.

main.c

main.c

copy
1234567891011
#include <stdio.h> #define MAX 100 int main() { printf("MAX = %d\n", MAX); // MAX = 100 #undef MAX // remove macros MAX #define MAX 200 // define new macros MAX printf("MAX = %d\n", MAX); // MAX = 200 return 0; }
Switch to desktopSwitch to desktop for real-world practiceContinue from where you are using one of the options below
Everything was clear?

How can we improve it?

Thanks for your feedback!

close

Awesome!

Completion rate improved to 5.56
SectionΒ 2. ChapterΒ 4
single

single

some-alt