기본 문법
C 언어는 절차적 프로그래밍 언어로, 프로그램의 흐름을 순차적으로 제어하며 구조화된 코드를 작성할 수 있도록 설계되었습니다. 기본 문법을 이해하는 것은 C 언어를 효과적으로 활용하는 데 필수적입니다. 아래에서는 C 언어의 핵심 문법 요소들을 자세히 살펴보겠습니다.
1. 프로그램의 시작: main() 함수
모든 C 프로그램은 main() 함수에서 실행을 시작합니다. 이 함수는 프로그램의 진입점(entry point)으로, 운영 체제가 프로그램을 실행할 때 가장 먼저 호출하는 함수입니다.
#include <stdio.h>
int main() {
// 실행할 코드
return 0;
}
위 코드에서 #include <stdio.h>는 표준 입출력 함수를 사용하기 위한 헤더 파일을 포함시키는 전처리 지시문입니다. return 0;은 프로그램이 정상적으로 종료되었음을 운영 체제에 알리는 역할을 합니다.
2. 문장의 종료: 세미콜론(;)
C 언어에서 각 명령문(statement)은 세미콜론(;)으로 끝나야 합니다. 이는 컴파일러에게 명령문의 끝을 알리는 역할을 하며, 세미콜론이 누락되면 컴파일 에러가 발생합니다.
3. 코드 블록: 중괄호({ })
중괄호는 여러 개의 명령문을 하나의 블록으로 묶을 때 사용됩니다. 함수, 조건문, 반복문 등에서 코드의 범위를 정의하는 데 필수적입니다.
if (condition) {
// 조건이 참일 때 실행할 코드
}
4. 주석(Comment)
주석은 코드에 대한 설명을 추가할 때 사용되며, 컴파일러는 이를 무시합니다. 주석은 코드의 가독성을 높이고, 협업 시 의사소통을 원활하게 합니다.
- 한 줄 주석:
// 주석 내용 - 여러 줄 주석:
/* 여러 줄 주석 내용 */
5. 첫 번째 C 프로그램 예제
아래는 "Hello, World!"를 출력하는 가장 기본적인 C 프로그램입니다.
#include <stdio.h>
int main() {
printf("Hello, World!\n"); // 출력: Hello, World!
return 0;
}
printf() 함수는 화면에 문자열을 출력하는 함수이며, \n은 줄 바꿈을 의미하는 이스케이프 시퀀스입니다.
6. 입출력 함수: printf()와 scanf()
C 언어에서는 표준 입출력 함수를 사용하여 데이터를 출력하거나 입력받을 수 있습니다.
6.1 printf() 함수
printf() 함수는 화면에 데이터를 출력하는 함수입니다. 다양한 형식 지정자(format specifier)를 사용하여 다양한 형식의 데이터를 출력할 수 있습니다.
int score = 90;
printf("점수: %d\n", score); // 출력: 점수: 90
위 예제에서 % d는 정수를 출력하기 위한 형식 지정자입니다.
6.2 scanf() 함수
scanf() 함수는 사용자로부터 입력을 받는 함수입니다. 입력받은 데이터는 변수에 저장됩니다.
int age;
scanf("%d", &age); // 사용자로부터 정수를 입력받아 age에 저장
&age에서 &는 변수의 주소를 의미하며, scanf() 함수는 해당 주소에 입력값을 저장합니다.
7. 형식 지정자(Format Specifier)
printf()와 scanf() 함수에서 사용하는 주요 형식 지정자는 다음과 같습니다:
%d: 정수 (int)%f: 실수 (float)%lf: 실수 (double)%c: 문자 (char)%s: 문자열 (string)%x: 16진수 정수%o: 8진수 정수
8. 이스케이프 시퀀스(Escape Sequence)
이스케이프 시퀀스는 출력할 수 없는 문자나 특수한 기능을 표현할 때 사용됩니다. 주요 이스케이프 시퀀스는 다음과 같습니다:
\n: 줄바꿈\t: 탭\\: 백슬래시 출력\": 큰따옴표 출력\': 작은따옴표 출력
9. 변수 선언과 초기화
C 언어에서는 변수를 사용하기 전에 반드시 선언해야 하며, 필요에 따라 초기값을 설정할 수 있습니다.
int number = 10; // 정수형 변수 선언 및 초기화
float pi = 3.14f; // 실수형 변수 선언 및 초기화
char grade = 'A'; // 문자형 변수 선언 및 초기화
10. 결론
C 언어의 기본 문법을 이해하는 것은 프로그래밍의 기초를 다지는 데 매우 중요합니다. 위에서 다룬 내용들을 숙지하고 다양한 예제를 통해 연습함으로써 C 언어에 대한 이해도를 높일 수 있습니다.
'Programming' 카테고리의 다른 글
| C 연산자 (74) | 2025.08.09 |
|---|---|
| C 변수와 자료형 (57) | 2025.08.08 |
| C 역사와 특징 (57) | 2025.08.06 |
| Swift 메모리 관리 (36) | 2025.08.05 |
| Swift 고급 타입 (56) | 2025.08.04 |