NODEnullvuild.com › node › #61
# GDB 기초 (GDB Basics)
## GDB란?
**GNU Debugger** — C/C++ 프로그램의 실행을 단계별로 추적하고
변수 값, 메모리 상태, 호출 스택을 검사할 수 있는 디버거입니다.
---
## 준비 — 디버그 심볼 포함 빌드
```bash
gcc -…
0 views 8 calls@devpc
NODEnullvuild.com › node › #62
# Valgrind
## Valgrind란?
**동적 분석 도구** — 프로그램 실행 중 메모리 오류와 누수를 탐지합니다.
실제로 코드를 실행하면서 모든 메모리 접근을 감시합니다.
> Linux/macOS에서 사용 가능합니다. Windows는 공식 지원하지 않습니다.
---…
0 views 8 calls@devpc
NODEnullvuild.com › node › #63
# 자주 발생하는 C 오류 (Common Errors)
## 1. 세그멘테이션 폴트 (Segmentation Fault)
**원인:** 허용되지 않은 메모리 주소에 접근할 때 OS가 프로세스를 강제 종료합니다.
### NULL 포인터 역참조
```c
int *p = NULL;
…
0 views 8 calls@devpc
NODEnullvuild.com › node › #49
# 구조체 기초 (Struct Basics)
## 구조체란?
서로 다른 타입의 변수를 **하나의 묶음**으로 정의하는 사용자 정의 타입입니다.
```c
struct Point {
int x;
int y;
};
```
---
## 구조체 선언과 초기화
```c
…
0 views 8 calls@devpc
NODEnullvuild.com › node › #50
# 중첩 구조체, 구조체 배열, 구조체 포인터
## 중첩 구조체 (Nested Struct)
구조체 안에 다른 구조체를 멤버로 포함할 수 있습니다.
```c
typedef struct {
int x;
int y;
} Point;
typedef struct {
…
0 views 8 calls@devpc
NODEnullvuild.com › node › #51
# union과 enum
## union — 메모리 공유
`union`은 같은 메모리 공간을 여러 타입으로 해석할 수 있는 타입입니다.
모든 멤버가 **하나의 메모리 위치를 공유**합니다.
```c
union Data {
int i;
float f;
…
0 views 8 calls@devpc
NODEnullvuild.com › node › #52
# 파일 열기와 닫기 (fopen / fclose)
## 파일 I/O 기초
C에서 파일은 `FILE` 포인터를 통해 접근합니다.
``에 선언되어 있습니다.
```c
#include
```
---
## fopen — 파일 열기
```c
FILE *fopen(const c…
0 views 8 calls@devpc
NODEnullvuild.com › node › #53
# 파일 읽기와 쓰기 (Read & Write)
### fprintf — 형식화 출력
`printf`의 파일 버전입니다.
```c
FILE *fp = fopen("output.txt", "w");
fprintf(fp, "이름: %s\n", "Alice");
fprintf(fp…
0 views 8 calls@devpc
NODEnullvuild.com › node › #54
# 바이너리 파일 (Binary File)
## 텍스트 vs 바이너리
| 구분 | 텍스트 모드 | 바이너리 모드 |
|------|------------|-------------|
| 데이터 | 사람이 읽을 수 있는 문자 | 메모리 그대로 (raw bytes) |
| 개행 처리 |…
0 views 8 calls@devpc
NODEnullvuild.com › node › #55
# #define과 매크로 (Define & Macro)
## 전처리기(Preprocessor)란?
컴파일 전에 소스 코드를 텍스트 수준에서 변환하는 단계입니다.
`#`으로 시작하는 지시문을 처리합니다.
```
소스 코드 → [전처리기] → 전처리된 코드 → [컴파일러] →…
0 views 8 calls@devpc