목차 일부
1장 리눅스 환경에서의 프로그래밍 ... 11
1-1 리눅스(Linux) 역사 ... 12
1-2 리눅스(Linux)의 특징 ... 13
1-3 리눅스 배포본 ... 14
1-4 리눅스 환경에서의 C 언어 중요성 ... 17
1-5 리눅스 프로그래밍 환경 ... 17
1-5-1 기본적인 리눅스 명령어 ... 18
...
더보기
목차 전체
1장 리눅스 환경에서의 프로그래밍 ... 11
1-1 리눅스(Linux) 역사 ... 12
1-2 리눅스(Linux)의 특징 ... 13
1-3 리눅스 배포본 ... 14
1-4 리눅스 환경에서의 C 언어 중요성 ... 17
1-5 리눅스 프로그래밍 환경 ... 17
1-5-1 기본적인 리눅스 명령어 ... 18
1-5-2 리눅스에서 제공하는 서비스를 관리하는 프로세스 명령어 ... 33
1-5-3 파일의 읽기, 쓰기, 실행 권한 관리를 위한 명령 ... 35
2장 파일 편집 ... 43
2-1 리눅스에서의 파일 편집 ... 44
2-2 vi 편집기 ... 45
2-2-1 vi 시작과 종료 ... 45
2-2-2 입력모드와 편집명령모드 ... 47
2-2-3 텍스트 입력 ... 48
2-2-4 커서의 이동 ... 51
2-2-5 편집 명령어 ... 54
2-2-6 문자열 찾기와 바꾸기 ... 58
2-2-7 set을 이용한 환경설정 ... 61
2-3 pico 편집기 ... 64
2-4 X-window환경에서의 문서편집기 ... 66
2-4-1 KEDIT ... 67
2-4-2 GEDIT ... 68
2-4-3 KATE ... 69
3장 컴파일 환경 ... 73
3-1 gcc ... 74
3-1-1 gcc란? ... 74
3-1-2 gcc의 기능 ... 74
3-1-3 실행 예제 ... 75
3-1-4 gcc 명령어 옵션 ... 77
3-1-5 라이브러리 ... 81
3-2 make ... 91
3-2-1 make란? ... 91
3-2-2 make 파일 ... 91
3-2-3 주석과 매크로 ... 95
3-2-4 내부 매크로(Internal Macros) ... 96
3-2-5 규칙 ... 97
3-2-6 규칙 ... 98
3-2-7 접미사 규칙 ... 99
3-2-8 확장패턴 규칙 ... 100
4장 디버깅과 오류처리 ... 103
4-1 GDB를 이용한 디버깅 ... 104
4-2 GDB 명령어 ... 107
4-3 프로그램 디버깅 ... 117
4-3-1 디버깅할 프로그램 지정 ... 117
4-3-2 디버깅할 프로그램의 인자 지정 ... 118
4-3-3 단계별 실행 ... 123
4-3-4 프로그램 상태 정보 디버깅 ... 130
4-4 GDB용 GUI ... 139
4-5 오류 처리 ... 142
4-5-1 오류번호 사용 ... 142
4-5-2 조건부 오류 처리 ... 148
5장 쉘(shell)을 이용한 환경 설정 ... 153
5-1 개요 ... 154
5-2 리눅스의 셀 ... 154
5-2-1 쉘의 종류 ... 154
5-2-2 사용자 쉘 바꾸기 ... 155
5-3 사용자 환경 설정 ... 157
5-3-1 환경 변수(Environment Variable) ... 157
5-3-2 사용자 환경 파일 ... 159
5-3-3 C 쉘(shell)에서 사용자 환경 파일 다루기 ... 160
5-3-4 C쉘에서 별명(alias) 사용하기 ... 166
5-3-5 C 쉘에서 쉘 프롬프트(shell prompt) 바꾸기 ... 168
5-3-6 bash에서 환경파일 다루기 ... 170
5-3-7 bash에서 쉘 프롬프트 다루기 ... 172
5-3-8 로그인 쉘의 재 수행 ... 174
5-3-9 히스토리(history)기능의 사용 ... 175
6장 배열과 포인터 ... 179
6-1 배열 ... 180
6-1-2 배열의 선언 ... 181
6-2 포인터 ... 196
6-2-1 포인터 변수 ... 196
6-2-2 포인터 변수의 선언 ... 198
6-2-3 포인터 연산 ... 201
6-3 포인터와 배열 ... 202
6-3-1 포인터와 일차원 배열 ... 202
6-3-2 포인터와 다차원 배열 ... 205
6-4 포인터와 함수 ... 207
6-5 포인터 배열 ... 211
6-6 이중 포인터 ... 213
6-7 문자배열 ... 215
6-7-1 문자 배열의 초기화 ... 215
6-7-2 문자열과 포인터 ... 218
7장 함수 ... 223
7-1 함수 정의 ... 224
7-2 함수의 기본 형태 ... 228
7-3 함수의 매개변수 전달 ... 232
7-4 재귀 함수 ... 239
7-5 지역변수와 전역변수 ... 240
7-6 main() 함수의 매개변수 ... 242
7-7 변수의 범위 ... 243
7-7-1 지역 변수 ... 244
7-7-2 전역변수(global variable) ... 246
7-7-3 전역 변수를 사용한 프로그램 ... 248
7-7-4 정적 변수(static variable) ... 251
7-8 동적 메모리 관리 ... 254
7-8-1 동적 메모리 할당과 반환 ... 254
7-8-2 동적 메모리 할당 함수 calloc() ... 260
7-8-3 메모리 재 할당 함수 realloc() ... 263
7-9 함수 포인터 ... 265
7-9-1 함수 포인터 선언 ... 265
7-9-2 함수 포인터의 사용 ... 267
8장 구조체와 공용체 ... 271
8-1 구조체 ... 272
8-1-1 구조체의 정의 ... 272
8-1-2 구조체 멤버 접근 ... 274
8-1-3 구조체의 초기화 ... 279
8-1-4 구조체 배열 ... 281
8-1-5 구조체의 typedef를 이용한 정의 ... 288
8-1-6 구조체의 포인터 ... 290
8-1-7 구조체를 함수의 인수로 전달하는 방법 ... 292
8-2 공용체 ... 294
8-2-1 공용체의 메모리 배치 구조 ... 294
9장 프로세스 제어와 시그널 ... 299
9-1 프로세스 제어 ... 300
9-1-1 프로세스란? ... 300
9-1-2 프로세스 생성 ... 300
9-1-3 프로세스 종료 ... 303
9-1-4 프로세스 동기화 ... 306
9-1-5 프로그램 수행 ... 309
9-1-6 간단한 쉘 만들기 ... 312
9-2 시그널 ... 316
9-2-1 시그널이란? ... 316
9-2-2 시그널의 종류 ... 317
9-2-3 시그널 집합 ... 319
9-2-4 시그널 처리 ... 319
9-2-5 시그널 전송 ... 324
9-2-6 시그널 차단 ... 330
9-2-7 시그널로부터 이전 상태 복귀 ... 334
10장 파일 처리 ... 339
10-1 표준 입출력 함수 ... 340
10-2 저수준 파일 처리 함수 ... 343
10-3 파일 상태 ... 360
10-4 디렉토리 관련 함수 ... 369
10-5 기타 함수 ... 376
찾아보기 ... 389
더보기 닫기