for( ) 문에서 , (콤마)의 사용
![익명 사용자의 이미지 익명 사용자의 이미지](/files/bluemarine_logo.png)
글쓴이: 익명 사용자 / 작성시간: 월, 2011/07/04 - 11:11오후
for(초기식; 조건식; 증감식)문에서
초기식과 증감식에 ,(콤마)를 사용하는 경우는 많이 봤지만
조건식에서 ,(콤마)를 사용하는 경우는 거의 보지 못했는데
지금 보는 소스중에 있더군요
이런건 예제 프로그램을 만들어서 확인해보면 어떻게 동작하는지 쉽게 확인할 수 있지만
좀 비규칙적으로 동작하는 것 같습니다
예제 프로그램을 만들어서 확인하신 분 말고
어떻게 동작하는지 이론적으로 알고 계신 분 있나요?
답변주시면 감사하겠습니다
Forums:
콤마 연산자의 연산 결과는 무조건 맨 오른쪽 항에
콤마 연산자의 연산 결과는 무조건 맨 오른쪽 항에 있는 문장이 연산결과가 됩니다.
-------------------------------------------------------------------------------
It's better to appear stupid and ask question than to be silent and remain stupid.
답변 감사합니다
예제 프로그램을 만들어서 테스트해본 결과 그런 것 같기는 했습니다
그런데 그러면 콤마 왼쪽에 항을 두는 이유는 무엇인가요?
콤마연산자 자체가 2항 연산자라서 그렇습니다. 이렇게
콤마연산자 자체가 2항 연산자라서 그렇습니다. 이렇게 생각해보시면 됩니다.
우리가 이렇게 글을 쓸때도 어떤사항을 나열할때 콤마를 쓰지요?
사과, 배, 수박, 딸기
이런식으로 콤마 연산자는 나열이라고 보시면됩니다. 나열을 하려면 반드시 최소한 두개는 필요하지요?
하지만 특성상 연산자이기 때문에 반드시 계산결과가 있어야하므로 왼쪽에서 오른쪽으로
결합관계에 따라 맨 마지막 항목이 계산결과가 됩니다.
물론 연산자이기 때문에 콤마로 구분되어있는 식도 모두 수식으로 간주되어 실행이 됩니다.
그리고 for문에서 초기값과 증감식에 콤마 연산자가 자주 쓰이는 이유는 위와 같은 특성때문입니다.
나열이며 연산자이기 때문에 콤마로 구분된 영역은 하나의 수식(문장)으로 간주되어 실행되기 때문입니다.
그리고 for문의 특성상 초기값과 증감식 부분에는 굳이 계산결과가 필요가 없죠. 그런데 비교문 부분에는
계산결과가 반드시 쓰이기 때문에 콤마연산자의 연산결과가 중요하게 됩니다.
-------------------------------------------------------------------------------
It's better to appear stupid and ask question than to be silent and remain stupid.
신기하다
신기하다
재벌 2세가 재벌이 될 확률과
금메달리스트 2세가 금메달을 딸 확률이 비슷해지도록
자유오픈소스 대안화폐를 씁시다.
아이디의 아이디어 무한도전
http://blog.aaidee.com
귀태닷컴
http://www.gwitae.com
그냥 comma operator
그냥 comma operator 스펙입니다.
http://en.wikipedia.org/wiki/Comma_operator
Neogeo - Future is Now.
댓글 달기