No Rules Rules

for문 개념 (feat. c++, 초기식, 조건식, 증감식, 논리식) 본문

언어/C++

for문 개념 (feat. c++, 초기식, 조건식, 증감식, 논리식)

개발하는 완두콩 2022. 7. 20. 13:54
728x90
반응형

 

처음 언어를 배우면 흔히 조건문, 반복문을 시작하게 됩니다. 여기서 반복문이란 말 그대로 "반복"해서 무언가를 동작하게 할때 사용됩니다.

C언어에서 배우는 반복문은 보통 아래와 같죠.

int idx;
for (idx = 0; idx < 10; ++idx)
{
	...
}
 

또는

for (int idx = 0; idx < 10; ++idx)
{
	...
}
 

입니다.

잠깐!

두 가지의 예제에서 idx를 생성하는 곳이 서로 다른 것을 알 수 있습니다.

왜그럴까요?

 

여기에는 C언어의 역사가 존재합니다.

1999년도는 C언어를 개정한 해입니다. 쉽게 말해 "현대의 C언어는 이렇게 하겠어!" 라고 획을 그은 해인데요.

이때 개정된 C언어를 통상 C99 라고 합니다.

즉, C99 이전과 이후로 C언어는 나뉜다고 할 수 있는데요.

C99에서 개정된 내용 중 하나가 바로 for문 내에서 초기식을 사용할 수 있다! 입니다.

 

 

위와 같은 반복문에서 각자의 기능마다 번호를 매긴다고 한다면

아래와 같이 4개로 구분할 수 있습니다.

1) int idx = 0
2) idx < 10
3) ++idx
4) ...
 

우리는 흔히들 4개를 다음과 같이 정의합니다.

1 : 초기식
2 : 조건식
3 : 증감식
4 : 논리식

제가 후배님들에게 SW 교육을 할때마다 물어보는 질문이 있습니다.

그것은 바로 "위 1번부터 4번을 순서대로 나열해보세요." 입니다.

정말 쉬운 질문인것 같지만 신기하게도 항상 절반은 모르는 질문입니다.

 

만약 아래와 같은 예제가 있다면, 과연 순서는 어떻게 될까요?

for (int idx = 0; idx < 2; ++idx)
{
	...
}
 

정답은 바로 다음과 같습니다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형
1→2→4→3→2→4→3→2
 

다들 맞추셨나요?

다음은 다양한 for문들에 대해 얘기 해보겠습니다.

728x90
반응형
Comments