응_비 2024. 10. 5. 18:08

C 언어의 구조는 기본적으로 아래와 같은 요소들로 구성됩니다:

1. 헤더 파일 포함

C 언어 프로그램은 보통 표준 라이브러리 함수를 사용하기 위해 헤더 파일을 포함합니다. #include 지시어를 통해 다른 파일을 프로그램에 포함할 수 있습니다.

#include <stdio.h>   // 표준 입출력 함수 포함

2. 전역 변수 및 상수 선언

전역 변수는 프로그램 전체에서 사용할 수 있는 변수입니다. 전역 변수는 함수 외부에 선언됩니다.

int global_variable = 10;  // 전역 변수

3. 함수 선언 및 정의

모든 C 프로그램은 main() 함수에서 시작합니다. 다른 함수들은 main() 함수 내에서 호출되거나 독립적으로 정의됩니다.

void someFunction() {
    // 함수 정의
}

int main() {
    someFunction();  // 함수 호출
    return 0;
}

4. 데이터 타입

C 언어는 다양한 데이터 타입을 지원합니다.

• 기본 데이터 타입: int, float, double, char, void 등이 있습니다.
• 사용자 정의 데이터 타입: struct, union, enum 등이 있습니다.

int num = 10;
float fnum = 5.5;
char letter = 'A';

5. 변수 및 상수 선언

변수를 선언하고 초기화할 수 있습니다.

int x = 5;          // 변수 선언 및 초기화
const int y = 10;   // 상수 선언 (변경 불가)

6. 제어문 (Control Statements)

C 언어는 조건문, 반복문 등 제어 구조를 제공합니다.

• 조건문: if, if-else, switch

if (x > 5) {
    printf("x는 5보다 큽니다.\n");
} else {
    printf("x는 5보다 작거나 같습니다.\n");
}


• 반복문: for, while, do-while

for (int i = 0; i < 10; i++) {
    printf("%d\n", i);
}



7. 함수 호출 및 반환

함수는 값을 반환할 수 있으며, 인자를 전달받을 수 있습니다.

int add(int a, int b) {
    return a + b;
}

int main() {
    int result = add(3, 4);
    printf("%d", result);  // 7 출력
    return 0;
}

8. 포인터

C 언어는 포인터를 지원하여 메모리 주소를 가리키거나 참조할 수 있습니다.

int num = 10;
int *ptr = &num;    // num의 주소를 ptr에 저장
printf("%d", *ptr); // 포인터가 가리키는 값 출력 (10)

9. 구조체 (struct)

C 언어에서는 여러 변수를 하나의 데이터 구조로 묶을 수 있는 구조체를 지원합니다.

struct Person {
    char name[50];
    int age;
};

struct Person person1;
person1.age = 30;

10. 입출력

C 언어는 표준 입출력 함수를 사용하여 콘솔 입출력을 처리합니다.

printf("Hello, World!\n"); // 출력
scanf("%d", &x);           // 입력

C 언어 구조의 예시:

#include <stdio.h>   // 표준 입출력 라이브러리 포함

int add(int a, int b) {
    return a + b;
}

int main() {
    int num1 = 5;
    int num2 = 10;
    int sum = add(num1, num2);

    printf("Sum: %d\n", sum);
    return 0;
}

이 프로그램은 add라는 함수를 정의하고, 두 개의 정수를 더한 값을 반환합니다. main 함수는 프로그램의 진입점이며, printf를 통해 결과를 출력합니다.

요약

C 언어는 함수, 데이터 타입, 제어문, 포인터, 구조체 등의 요소로 구성된 절차적 프로그래밍 언어입니다. 프로그램은 main() 함수에서 시작되며, 필요한 기능들을 함수와 구조체 등을 통해 구현합니다.