wwfl.net
当前位置:首页 >> #inCluDE<stDio.h> #DEFinEFUN(x,y)x<y?y:x ... >>

#inCluDE<stDio.h> #DEFinEFUN(x,y)x<y?y:x ...

宏的替换x+y<x*y?x*y:x+y;这里x=5,y=10;z=10*5+10<5*10?5*10:5+10;所以z=60<50?50:15;说以z-15;所以这里宏的定义法为下面就好了 #defineFUN(x,y)(x)<(y)?(y):(x)这是宏定义经常出现的问题

宏是直接展开的FUN(1+a,1+b))=1+a*1+b=1 + 2 + 3=6

c语言中的异或,不用第三个数,就把x和y互换,

展开后为2+a*b,结果为8

#includeint main(){int n,i=1,j=1,sum=0; /*i为循环变量,j为n!, sum为总和 */ printf("请输入n的值:\n"); scanf("%d",&n); while(i 评论0 0 0

1. 首先要清楚 #define 宏定义并不会有任何的计算发生,只是单纯的将替换文本其看成字符串.如下#include <stdio.h>#define A 3+3 int main() { printf("%d",A*A); return 0; }结果是15 原因是宏定义并非计算A为3+3的值,而是仅仅将'3' ,'+' ,

相关文档
网站首页 | 网站地图
All rights reserved Powered by www.wwfl.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com