변수와 연산자에서 질문좀요
당나귀
2023.04.01
질문 제목 : 변수와 연산자에서 질문좀요
실행결과 9하고 12가 출력되는데
printf(val1 : %d \n, val1); 여기서int val1=10;를 출력하면 10이 나오고
printf(val2 : %d \n, val2); 에서는 int val2=(val1--)+2; 이걸 출력하는거니깐
int val2=(val1--)+2; 에서 val1--은 10에서 1을 뺀거니깐 9가 되죠 거기서 +2를 더한다고 하면 11이 나와서
결과는 10하고 11이 아닌가요?
질문 내용 :
#include stdio.h
#include conio.h
int main(void)
{
int val1=10;
int val2=(val1--)+2;
printf(val1 : %d \n, val1);
printf(val2 : %d \n, val2);
getch ();
return 0;
}
-
늘봄
int val2=(val1--)+2;
는
아래 3줄을 한 줄로 적어놓은 것입니다.
int val2;
val2 = val1 + 2; //10+2는 12이므로 val2는 12이 됩니다.
val1--; //여기서 val1이 9로 바뀝니다. -
소심한여자
val1--는 선행증가 입니다.
-
이송이
--가 뒤에 올 때 어떤 역할을 하는지 다시 알아보세요.