宏,简单的字符替换,经典形式spa
#define mult(a,b) ((a)*(b))
为何要写成这个样子,是有缘由的code
形式1:blog
#define mult(a,b) a*b int c = mult(3+2,2+1);//结果8,实际展开形式 3+2*2+1
形式2:class
#define mult(a,b) (a)*(b) int c = mult(5,6)/mult(2,3);//结果为45,实际展开形式 5*6/2*3