F.R.I.D.A.Y.

for의 진행방식 본문

DEV/C C++

for의 진행방식

F.R.I.D.A.Y. 2019. 1. 15. 01:43
반응형

 C/C++의 for는 기본적으로 아래와 같은 기본 형식을 가지고 있다.


for(초기화식; 조건식; 증감식){
    명령;
}



 처음 C를 접하는 초보자들의 경우 for의 진행방식을 헷갈려할 수 있다.


int i;
for (i = 0; i < 10; ++i){
    printf("%d", i);
}


위 식이 끝나고 난 후의 i 값은 얼마일까? 10이다.


 잘 모르겠다면 for문을 while문으로 고쳐보면 쉽게 이해할 수 있다. 기본적인 for문을 while문으로 고쳐보면 다음과 같다.


초기화식;
while(조건식){
    명령;
    증감식;
}


이렇게 코드를 while로 고쳐보면 다음과 같다.


int i = 0;
while(i < 10){
    printf("%d", i);
    ++i;
}


결국, 조건을 만족하면 명령을 진행한 후 값이 증가하는 루틴이 추가로 돌기 때문에 i가 10이 될 때까지 while이 돌게 된다.

 for가 진행하는 방식이 코드의 순서대로 순차적으로 동작하지 않기 때문에 "i 값은 9까지만 증가한다"라는 오해를 가질 수 있다. for문을 자주 사용하는 것도 좋고, 다른 사람의 코드에서도 for문은 자주 보이기 때문에 정확하게 인지했으면 한다.

 for문의 초기화식에 변수를 선언해도 되지만[각주:1], 종류에 따라서 for에서 사용할 변수를 for문 앞에 작성해 변수 값을 기준으로 판단가능하도록 할 수도 있다.

  1. VS2012, 2013, 2015에서는 모르겠으나 VS2010에서는 C언어의 변수 선언은 main함수의 최상단에 일괄적으로 작성하는 것이 표준이다. 표준이 새로 새로 만들어지며 코드 중간에서도 변수 선언이 가능해졌다. [본문으로]
728x90
반응형

'DEV > C C++' 카테고리의 다른 글

헤더파일 만들기  (0) 2019.01.24
KaKao 블라인드 테스트(하)  (0) 2019.01.19
MFC :: 화면 캡쳐(capture.exe)  (0) 2018.12.23
substr 직접 만들어보기  (0) 2018.11.14
배열은 수정 가능한데 포인터는 수정 불가?  (0) 2018.09.25
Comments