[問題] C中的If判斷式
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
GCC
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
沒有
問題(Question):
#include<stdio.h>
#define maxint(a,b)({int a1=a,b1=b;a1>b1?a1:b1;})
#define max(a,b)(a>b?a:b)
int main(){
int i=5,j=6;
//printf("%d\n",maxint(i++,j++));
//printf("%d\n",max(i++,j++));
}
Printf兩個出來的值會不同,上面的printf會printf出6,下面的會printf出7,請問一下是為什麼?
補充說明(Supplement):
兩行printf我有分開來解除註解來測試,並非兩行一起跑。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.20.228.30
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1425546440.A.D9D.html
→
03/05 17:21, , 1F
03/05 17:21, 1F
→
03/05 17:28, , 2F
03/05 17:28, 2F
→
03/05 21:45, , 3F
03/05 21:45, 3F
→
03/05 22:19, , 4F
03/05 22:19, 4F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章