编译预处理#define

上一篇 / 下一篇  2012-06-02 12:18:29 / 个人分类:LoadRunner

编译预处理在Loadrunner应用的例子:
 
例一:结果1
#define SQR(X) X*X
int a=10,k=2,m=1;
a/=SQR(k+m)/SQR(k+m);
//printf("%d",a);
lr_output_message("%d",a);
 
例二:结果48
#define N 3
#define Y(n) ((N+1)*n)
lr_output_message("%d",2*(N+Y(5+1)));
 
例三:结果8
#define MA(X)  X*(X-1)
int a=1,b=2;
lr_output_message("%d",MA(1+a+b));
 
例四:结果97,c
#define STR "%d,%c"
#define A 97
lr_output_message(STR,A,A+2);
例五:结果9911
 
#define PR(ar) lr_output_message("%d",ar)
 int j,a[]={1,3,5,7,9,11,13,15},*p=a+5;
for (j=3;j;j--) {
 switch (j) {
 case 1:
 case 2: PR(*p++);break;
 case 3: PR(*(--p));
 }
}
例六:结果7
#define MAX(x,y) (x)>(y)?(x):(y)
int a=5,b=2,c=3,d=3,t;
t=MAX(a+b,c+d)*10;
lr_output_message("%d\n",t);
 
例七:结果9
#define POWER(x) (x)*(x)
int a=1,b=2,t;
t=POWER(a+b);
lr_output_message("%d\n",t);
 
例八:结果10
#define A 2
#define B 3*A
#define C B+A
lr_output_message("%d\n",C*2);
 
 
 
 
 
 
 
 

 

TAG:

 

评分:0

我来说两句

Open Toolbar