首页 > 编程知识 正文

define用法,C语言define详解,c语言define语句

时间:2023-05-06 00:03:17 阅读:183090 作者:941

define的用法: define是C语言中的 预处理命令,它用于 宏定义,可以提高 源代码的可读性,为编程提供方便。
  预处理命令以“#”号开头,如包含命令#include,宏定义命令#define等。一般都放在源文件的前面,它们称为预处理部分。
  所谓预处理是指在进行编译之前所作的工作。预处理是C语言的一个重要功能,它由预处理程序负责完成。当对一个源文件进行编译时,系统将自动引用预处理程序对源程序中的预处理部分作处理,处理完毕自动进入对源程序的编译。
  在C或C++语言源程序中允许用一个标识符来表示一个字符串,称为“宏”。被定义为“宏”的标识符称为“宏名”。在编译预处理时,对程序中所有出现的“宏名”,都用宏定义中的字符串去代换,这称为“宏代换”或“宏展开”。宏定义是由源程序中的宏定义命令完成的。宏代换是由预处理程序自动完成的。 define的最简单的用法: #define LEN 10编译器在处理这个代码之前会对LEN进行处理,替换为10,或许有些人认为这样的定义看起来和const常量很相似,但是他们还是有区别的,#define的定义其实就是简单的文本的替换,并不是作为一个量来使用
define的函数定义: #define max(a,b) (a>b?a:b)//还可以将括号去掉  a>b?a:b这个定义就是两个数中大的那个数,但是它不能在后面加分号,否则会将分号一起替换过去,就会出现编译错误; #if与#endif的用法: #if 0code#endif

(1)如果想让code生效,只需把#if 0改成#if 1 ,为1时,表示为真;

(2)#if 1可以让其间的变量成为局部变量;

(3)这个结构表示你先前写好的code,现在用不上了,又不想删除,就用这个方法,比注释方便,在注释的时候可以收缩在一起 看上去美观;

#ifdef的用法:

#ifdef 标识符

程序段1 

#else

程序段2 

#endif 

它的作用是:当标识符已经被定义过(一般是用#define命令定义),则对程序段1进行编译,否则编译程序段2。

#ifndef的用法:

#ifdef 标识符

程序段1 

#else

程序段2 

#endif 

他的作用与#ifdef相反,当标识符未定义时,执行程序段1;






版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。