C语言有很多预编译关键字,如#if、#include、#else……,所有以#开头的的关键字都属于这一类,此处讨论#define关键字
#define的核心就是“替换”
如#define MAXLEN (int)20 语句,在代码中凡是遇到MAXLEN字符串都用,(int)20替换。如源代码中b
= c / MAXLEN;实际在预编译阶段将会把做替换编程,b = c / 20;来编译。
如下例代码:
[cpp:showcolumns]
·········10········20········30········40········50········60········70········80········90········100·······110·······120·······130·······140·······150
#include
#define MAXLEN (int)20
#define MAX(a,b) ((a)>(b))?(a):(b)
#define MIN(a,b) (a
intmain(void)
{
inta[MAXLEN];
inti,maxvalue,minvalue;
srand(0x45623);
for(i = 0; i
printf("%d ",a[i] = rand());
maxvalue =minvalue = a[0];
for(i = 1; i
{
maxvalue = MAX(maxvalue, a[i]);
min