int a= 5;
int b = 5;
int c= 2;
if(c-=2 || a++ && b++){
printf("1 ");
}else
printf("2 ");
printf("%d %d %d",a,b,c);
여기서 a와 b는 왜 5인지 알겠는데 c값이 왜 1인지 모르겠네요. 이유좀알려주세요 c에 0값이 대입되서 c가 0이되는거 아닌가요?
int a= 5;
int b = 5;
int c= 2;
if(c-=2 || a++ && b++){
printf("1 ");
}else
printf("2 ");
printf("%d %d %d",a,b,c);
여기서 a와 b는 왜 5인지 알겠는데 c값이 왜 1인지 모르겠네요. 이유좀알려주세요 c에 0값이 대입되서 c가 0이되는거 아닌가요?
if(c-=(2 || a++ && b++)) 로 해석된듯
야 근데 a랑 b가 안 늘어난것도 좀 이상하지 않냐
컴팔러 뭐임?
2 || a++ && b++ 는 언제나 참이니까 그런거 아님? 연산자 우선순위도 &&가 먼저니까
c-=(2 || (a++ && b++))
잘 알고 있군