#include <stdio.h>
void main()
{
int i=3,j=7,*p=&i,*q=&j;
j += *q -= *p;
printf("%d %d %d\n",i,j,*q);
printf("%d %d %d\n",q != &i, *p + *q, **&q);
printf("%d %d\n",i + *p / *q, ++*p + *q++);
}
위의 3번째 printf() 에서
i + *p / *q 의 결과값이
책에는 0 이라 나와있고
컴파일 하면 5 라고 나옵니다.
제생각에는 i=3 이고 *p 는 3 이고 *q 는 8 이니까
3/8 하면 0. 이 나오니까 3 + 0. 은 3 아닌가여?
혹시 8/3해서 2. 이 되니까 3 + 2. 해서 5 가 나오는건가여?
제가 / 연산자를 햇갈리고 있나여?
아닌거 같은데 왜 5가 나오는지 궁금합니다.
전 터보씨++3.1 윈도우버젼을 쓰고 있습니다.
계속되는 초보적인 질문에 답변해주시는 분들 정말 감사합니다~~
공부 열심히 할게여~~
|