#undef 的用法】的更多相关文章

Copy from C语言中#undef的语法是: #undef 标识符 用来将前面定义的宏标识符取消定义. 整理了如下几种常见用法,如果以后发现其他的再添加进来. 1.在一个程序块中用完宏定义后,为防止后面标识符冲突需要取消其宏定义: #include <stdio.h> int main(){#define MAX 200printf("MAX = %d\n", MAX);#undef MAX {int MAX = 10;printf("MAX = %d\n&…
简    介 在后面取消以前定义的宏定义 在此程序中,我们将取消在先前程序中对预处理器的定义. #include <stdio.h> int main( void ) { #define MAX 200 printf("MAX= %d\n",MAX); #undef MAX #define MAX 300 printf("MAX= %d\n",MAX); ; }…
在Visual Studio2008中编写如下代码: #include <iostream> using namespace std; int main() { #define MODI 10 cout << MODI << endl; #undef MODI cout << MODI + << endl; ; } 编译器会对 cout << MODI + 1 << endl;这行语句报错. 原因就是#undef起的作用:…
简单的控制台应用程序. 代码(它有把某条消息写到屏幕上的一个类组成) 编译并运行程序得到结果: 在上面的代码示例中,前几行代码与名称空间有关,名称空间是把相关类组合在一起的方式.namespace关键字声明了应与类相关的名称空间.编译器在using语句指定的名称空间中查找没有在当前名称中定义但在代码中应用的类. using Systme; namespace Work { 如果没有using,就必须完全限定对Console.WriteLine()方法的调用,如下 System.Console.W…
一.背景 最近在跟一段系统级的代码,和原来单纯的下位机代码相比,真的是刘姥姥进大观园--看花了眼.相较于 之前所常见的各种下位机代码,系统级代码常常会出现深层次结构体嵌套,结构体内的各种回调函数导致对函数 指针的赋值调用也成为常态,以及各种各样的宏定义等等,均让人有一种眼前一亮.耳目一新的既视感.由于 对宏了解不多,也就对此处我在实际代码碰到过的#define,#include,#undef的使用的其中一个目的做个 记录. 二.正文 实际代码如下: #define _MCARO_1 #inclu…
#undef的语法 定义:#undef 标识符,用来将前面定义的宏标识符取消定义. 整理了如下几种#undef的常见用法. 1. 防止宏定义冲突在一个程序块中用完宏定义后,为防止后面标识符冲突需要取消其宏定义. 例如: #include <stdio.h> int main() { #define MAX 200 printf("MAX = %d\n", MAX); #undef MAX ; printf("MAX = %d\n", MAX); ; }…
C#的预处理命令其实还是蛮有用的,但是真正使用过得人不多,这个介绍一下平时用的比较多的预处理命令中的几个:#define,#undef ,#if,#endif.除此之外还有一些预处理命令#warning,#error,#region#endregion,#line,#pragma等,在这里就不一一介绍,都比较简单. 使用预处理器指令可以禁止编译器编译代码的某一部分,如果计划发布两个版本的代码,即基本版本和拥有更多功能的企业版本,就可以使用这些预处理指令,在编译软件的基本版本时,使用预处理器可以禁…
转自:http://www.dingge.com/main/article.asp?id=10 今天整理了一些#define的用法,与大家共享! 1.简单的define定义 #define MAXTIME 1000 一个简单的MAXTIME就定义好了,它代表1000,如果在程序里面写 if(i<MAXTIME){.........} 编译器在处理这个代码之前会对MAXTIME进行处理替换为1000. 这样的定义看起来类似于普通的常量定义CONST,但也有着不同,因为define的定义更像是简单的…
上一篇讲到了typedef 关键字的使用,可以参考文章 Object C 学习笔记--typedef用法 .而在c中还有另外一个很重要的关键字#define. 一. #define 简介 在C中利用预处理代码,可以让你的代码变得更加具有可读性,更加符合个人的编码风格,这也是C的强大之处.#define可以实现代码的预处理,代码在编译之前会被提前处理. 二. 常量处理 语法: #define 常量名 产量值 #define 声明主要用于将常量(或字符串)赋予有意义的名字,这个和.NET中的常量co…
在linux/unix平台上的 sqlplus中,如果输错了字符,要想删除,习惯性的按下backspace键后,发现非但没有删除想要删掉的字符,还多出了两个字符^H.当然,我们 可以同时按下ctrl+backspace键来删除,但对于习惯了用backspace来删除的用户,这样很不爽.这可以通过修改tty终端的设置来实现 backspace删除功能.通过使用stty命令,就可以查看或者修改终端的按键设置. 例如,设置backspace为删除键: [oracle10g@linux]$ stty e…