프로그래밍은 실행 순서를 아는 것이 기본이 됩니다. 코드 구문이든 파일들이 순차적으로 실행되는 구조를 미리 파악해두고 이를 프로그램화 하면 되죠. 아래 코드를 봅시다.
int a = 1;
int b = 2;
int sum;
sum = a + b;
이 코드는 a에 들은 정수형 값인 1을 b에 들은 2와 더해서 정수형 변수 sum에 대입합니다. 이는 흐름상으로 아주 명료합니다.
이 코드를 축약하면 이렇습니다.
int a = 1;
int b = 2;
int sum = a + b;
만일 b에 1이 들어가야 한다면
int a, b = 1;
int sum = a + b;
처럼 쓸 수도 있습니다.
한편
int a = 1;
int b = 2;
a = a + b;
처럼 쓸 수도 있는데 주목할 부분은 a가 재사용된다는 것입니다. 이는 순차적 실행을 하는 것이 기본이라 가능한 작업인데요. 우선 실행이 될때 a = a + b 단계에서 우변이 우선적으로 실행됨을 알 수 있으면 일단 잘 아는 것입니다. 즉 a에 1을 저장하고 b에 2를 저장해서 a 에 대입하는 과정입니다. 우선 a값을 b와 합하는 연산을 하고나서 메모리 구간 다른데에 a + b가 적재되어 있게 되고 이 값을 읽어들여 a 변수에 대입하는 것입니다. a + b가 이미 실행되면 a 변수값이 바뀌더라도 전체 연산은 무사히 마쳐질 수 있습니다. 이러한 것을 잘 알면 프로그램을 짤때 구문 제작에 보탬이 되기도 합니다.
즉 코드 실행 순서를 어느 정도는 꿰차고 있어야 프로그래밍이 진행됩니다. 위 코드들이 같은 기능을 하더라도 실행 순서를 파악해서 달리 바꿀 수도 있고 같은 기능으로 하게 할 수도 있는 것이죠. 이를 바탕으로 해서 코딩을 하면 되는게 프로그램의 한 묘미입니다.
추가로 말하자면 C++ 언어의 경우 함수의 프로토타입을 소스코드 앞에 지정하기도 하고 뒤에 지정하기도 하는데 이런 경우에는 어디에 오든 컴파일이 무리없이 잘 됩니다. 이는 위에 제시한 코드들이 무조건 흐름을 지켜서 코드에 기재해야 하는 것과 다른 작동 방식입니다. 이를 잘 알아두려면 프로그래밍 언어 문법서를 여러 권 다수 잘 살펴봐야 하고 때로는 표준안 같은 것을 구해서 읽어보면 어떻게 지켜야할지 알 수 있게 됩니다.