대부분의 사람들이 프로그래밍에 입문하여 C언어를 배울 때 자주 헷갈리는 것 같다.
어디서부터 어디까지가 반복되는 부분이고 어디서부터 어디까지가 실행되어야 하는지.
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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | #include <stdio.h> void snale_matrix() { int matrix[5][5]; int num = 1; int delta = 1; int limit = 5; int i = 0, j = -1; int p, q; while (1) { //가로로 이동하면서 하나씩 할당 for (p = 0; p<limit; p++) { j = j + delta; matrix[i][j] = num; num++; } //횟수 줄이고 limit--; if (limit<0) break; //세로로 이동하면서 하나씩 할당 for (p = 0; p<limit; p++) { i = i + delta; matrix[i][j] = num; num++; } //이동방향의 양음이 바뀜 delta = -delta; } //2차원 배열 출력 for (p = 0; p<5; p++) { for (q = 0; q<5; q++) { printf("%d\t", matrix[p][q]); } printf("\n"); } } int main(void) { snale_matrix(); return 0; } | cs |
출처: http://milvus.tistory.com/59
위의 코드를 보자.
for문안에 반복되는 내용과 if문이 참일때 실행되는 내용들이 전부 {}로 묶여있다.
위와 같이 긴 코드를 볼 때는 for, if, switch, 함수, 뒤에 오는 {}로 묶여진 함수들은 전부 하나의 블록으로 생각한다.
그렇게 생각하면 어디서 어디까지가 실행된는 부분인지 알기 편하고
코드를 짤 때도 도움이 된다.
실행 함수가 한개라도 {}를 통해 블럭 표시를 잘 해주자.
'컴퓨터랑 친해지기' 카테고리의 다른 글
[개발 환경] visual studio 새 프로젝트 생성 (0) | 2020.07.16 |
---|---|
[개발환경] visual studio 2019 설치 (0) | 2020.07.16 |
shellcode (0) | 2018.11.10 |
상수, 문자, 문자열의 구분 (0) | 2018.04.03 |
배열의 차원 (0) | 2018.04.03 |