while 구문에서 a=0, b=5이기에 조건이 성립하여 while구문을 실행하게 되는데 ++a도 실행되어 a가 1이되었기에 c가 1이 아닌가요??
처음1회 실행시키게 되면 a=0, b=5, c=1이 아닌가요? 왜 처음에 a=0, b=5, c=0인지 궁금합니다.
++a가 전치 연산자이기에 while구문에서 조건이 맞아서 내려오게 되면 바로 a의 값이 0에서 1로 변화되어 c에 1을 더해 c값이 1이 되는 것이 1회 반복했을 때가 아닌가요?
안녕하세요.
530쪽 해설과 같이
main() 함수에서 prnt() 함수를 호출하기 전에는
a = 0, b = 5, c = 0인 상태입니다.
prnt() 함수 안으로 들어와 처음 while문을 진입한 후
그 안에서 다시 prnt() 함수를 호출하기 바로 전은
a = 1, b = 5, c = 1인 상태입니다.
처음 a = 0, b = 5, c = 0은 prnt() 함수 안에서가 아니라 prnt() 함수가 처음 호출되기 바로 전인 main() 함수에서의 상태입니다.
오늘도 즐거운 하루 되세요.
-
관리자2019-03-26 10:34:08
안녕하세요.
530쪽 해설과 같이
main() 함수에서 prnt() 함수를 호출하기 전에는
a = 0, b = 5, c = 0인 상태입니다.
prnt() 함수 안으로 들어와 처음 while문을 진입한 후
그 안에서 다시 prnt() 함수를 호출하기 바로 전은
a = 1, b = 5, c = 1인 상태입니다.
처음 a = 0, b = 5, c = 0은 prnt() 함수 안에서가 아니라 prnt() 함수가 처음 호출되기 바로 전인 main() 함수에서의 상태입니다.
오늘도 즐거운 하루 되세요.