티스토리 뷰
Loops
The while Statement
i = 10;
while( i > 0) {
printf("T minus %d and counting\n", i);
i--;
}
■ 제어 표현식은 while 루프가 종료 될 때 거짓이다. 따라서 i>0으로 제어되는 루프가 종료되면 i는 0보다 작거나 같아야한다.
■ 제어 표현식은 루프 본문이 실행되기 전에 테스트되기 때문에 본문이 한 번도 실행되지 않을 수 도 있다. i가 음수 또는 0값을 가지면 루프는 아무 작업도 수행하지 않는다.
■ while 문은 종종 다양한 방식으로 작성 될 수 있다. 예를 들어, printf 호출 내에서 i를 줄임으로써 카운트 다운 루프를 더 간결하게 만들 수 있다. ex) printf("T minus %d and counting\n", i--);
The do Statement
■ do 문은 while 문과 밀접한 관련이 있다. 사실, do 문은 본질적으로 루프 본문을 실행할 때마다 제어 표현식이 테스트되는 while문이다.
■ do 문이 실행되면 루프 본문이 먼저 실행 된 다음 제어 표현식이 평가된다. 표현식의 값이 0이 아니면 루프 본문이 다시 실행 된 다음 표현식을 한번 더 평가한다.
The for Statement
■ for문은 for( expr1 ; exrp2 ; exrp3) statement 형식으로 이루어진다.
■ for 문은 while문과 밀접한 관련이 있다. 실제로 몇 가지 드문 경우를 제외하고 for 루프는 항상 동일한 while 루프로 대체 될 수 있다.
expr1;
while ( expr2 ) {
statement
expr3;
}
■ 위의 패턴에서 알 수 있듯이 expr1은 루프가 실행되기 전에 한 번만 수행되는 초기화 단계이다. expr2은 루프 종료를 제어한다.(expr2의 값이 0이 아닌 한 루프는 계속 실행된다) expr3은 각 루프의 반복이 끝날때 수행되는 연산이다.
Omitting Expressions in a for Statement
■ 일부 for 루프는 일반적으로 루프를 제어하는 세 가지 표현식이 모두 필요하지 않을 수 있으므로 C에서는 일부 또는 모든 표현식을 생략 할 수 있다.
The Comma Operator
■ 쉼표 식은 두 단계로 평가된다. 먼저 expr1이 평가되고 해당 값이 버려진다. 둘째로, expr2가 평가된다. 그 값은 전체 표현식의 값이다. expr1을 평가하는 것은 항상 부작용(side effect)이 있어야 한다. 그렇지 않은 경우 expr1의 목적이 없다.
The continue Statement
■ break 제어문은 루프의 끝을 지나서 옮겨지는 반면에 continue 제어문은 루프 바디의 끝 직전으로 옮겨진다.
The Null Statement
■ 공백(null) 또한 문장이 될 수 있다. 끝에 세미클론을 제외하고 기호가 없다.
ex) i = 0; ; j = 1;
■ 위 예시에는 i 에대한 할당, null 문 및 j 에 대한 할당 총 세 가지 문이 포함되어 있다.
■ null 문은 주로 바디가 비어있는 루프를 작성하는 데 유용하다.
ex) for (d = 2; d < n && n % d != 0; d++);
- Total
- Today
- Yesterday
- 언리얼 프로젝트 재생성 자동화
- 초등부
- C++게임
- 브레젠험 알고리즘
- 퀸 움직이기
- 백준
- BOJ 2365
- UE5.3
- Python
- 백준 27469
- pygame
- Codeforces
- tetris
- 테트리스
- C++게임개발
- 언리얼 자동화
- 홍정모의 게임 만들기 연습 문제 패키지
- 숫자판 만들기
- ndisplay
- opengl
- 코드포스
- 정보올림피아드
- OpenVDB
- BOJ 27469
- unreal enigne
- 언리얼 프로젝트 재생성
- 백준 2365
- Unreal Engine
- ICPC 후기
- DP
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |