*정렬
- 정렬은 물건을 크기순으로 오름차순이나 내림차순으로 나열하는 것
- 정렬은 컴퓨터 공학분야에서 가장 기본적이고 중요한 알고리즘 중의 하나이다.
#선택 정렬
- 선택 정렬(selection sort) : 정렬이 안된 숫자들 중 최소값을 선택하여 배열의 첫 번째 요소와 교환하는 것
#순차 탐색
- 순차 탐색(sequential search) : 배열의 원소를 순서대로 하나씩 꺼내서 탐색키와 비교하여 원하는 값을 찾아가는 방법이다.
#이진 탐색
- 이진 탐색(binary search) : 정렬된 배열의 중앙에 위치한 원소와 비교를 되풀이
#문자 검색 : strchr()
#전처리기(Preprocessor) : 컴파일하기 앞서서 소스파일을 처리 하는 컴파일러의 한 부분
#전처리기 요약
#매크로 개념
#매크로 종류
*단순 매크로
- 단순 매크로(macro) : 숫자 상수를 기호 상수로 만든 것
*함수 매크로
- 함수 매크로(function-like macro) : 매크로가 함수처럼 매개변수를 가지는 것
Ex) #define Square(x) ((x) * (x))
#함수 매크로의 장단점
- 함수 호출 단계가 필요없어 실행 속도가 빠르다.
- 소스 코드의 길이가 길어진다.
*간단한 기능은 매크로를 사용
- #define MIN(x,y) ((x)) < (y) ? (x) : ((y))
- #define ABS(x) ((x)) > 0 ? (x) : -((x))
*매크로를 한줄 이상 연장하는 방법
- #define PRINT(x) if(debug==1 && \
mode ==1)\
printf("%d",x);
#ifdef
- 어떤 조건이 만족되었을 경우에만 컴파일하는 조건부 컴파일 지시
- 조건부 컴파일을 위한 매크로
#if 조건이 참일 경우에는
... 실행
#endif
...여기까지
#if
- 기호가 참으로 계산되면 컴파일
- 조건은 상수여야 하고 논리 , 관계 연산자 사용 가능
사용 형식
#if 조건
문장들
#endif
- 매크로의 값이 참이면 #if와 #endif 있는 모든 문장들을 컴파일
'C언어 > C언어' 카테고리의 다른 글
C언어 [헤더파일,이중 포인터,재귀 함수] (0) | 2017.11.10 |
---|---|
C언어 [동적할당,동적메모리] (0) | 2017.11.10 |
C언어 [구조체,구조체 배열,구조체 함수,구조체 포인터] (1) | 2017.11.08 |
C언어 [포인터,포인터 배열,포인터 함수] (0) | 2017.11.04 |
C언어 [(라이브러리,난수 함수),(지역,전역변수),문자열] (0) | 2017.10.30 |