함수 |
설명
|
문자열 변환
|
int atoi ( const char * str );
|
str을 int로 변환한다.
|
long int atol ( const char * str );
|
str을 long으로 변환한다.
|
double atof ( const char * str );
|
str을 double으로 변환한다.
|
long int strtol ( const char * str, char ** endptr, int base );
|
str을 base진법으로 long으로 변환한 뒤 endptr!=NULL이면 숫자가 끝난 후 첫 문자의 위치를 endptr에 반환한다.
|
unsigned long int strtoul ( const char * str, char ** endptr, int base );
|
str을 base진법으로 unsigned long으로 변환한 뒤 endptr!=NULL이면 숫자가 끝난 후 첫 문자의 위치를 endptr에 반환한다.
|
double strtod ( const char * str, char ** endptr );
|
str을 base진법으로 double으로 변환한 뒤 endptr!=NULL이면 숫자가 끝난 후 첫 문자의 위치를 endptr에 반환한다.
|
의사 난수 생성
|
int rand ( void );
|
0부터 RAND_MAX 사이의 의사 난수를 반환한다.
|
void srand ( unsigned int seed );
|
의사 난수 발생기를 seed로 초기화한다. 보통 seed는 time(NULL)로 설정된다.
|
동적 메모리 관리
|
void * malloc ( size_t size );
|
size 바이트의 메모리를 힙에서 할당하여 반환한다.
|
void * calloc ( size_t num, size_t size );
|
(num * size) 바이트의 메모리를 힙에서 할당하여 반환한다.
|
void * realloc ( void * ptr, size_t size );
|
ptr이 가리키는 메모리를 size 바이트만큼 힙에서 재할당하여 반환한다.
|
void free ( void * ptr );
|
ptr이 가리키는 메모리를 해제한다.(할당했으면 반드시 해제해야 한다.)
|
프로세스 제어
|
void abort ( void );
|
현재 프로세스를 비정상적으로 종료한다.
|
int atexit ( void ( * function ) (void) );
|
프로세스가 정상적으로 종료되었을 때 실행할 함수를 지정한다.
|
void exit ( int status );
|
현재 프로세스를 정상적으로 종료한다. status는 부모 프로세스에게 전달된다.
|
char * getenv ( const char * name );
|
name에 해당하는 환경 변수를 반환한다.
|
int system ( const char * command );
|
command의 시스템 명령을 실행한다.
|
검색/정렬
|
void * bsearch ( const void * key, const void * base, size_t num, size_t size, int ( * comparator ) ( const void *, const void * ) );
|
이진 검색을 한다.
|
void qsort ( void * base, size_t num, size_t size, int ( * comparator ) ( const void *, const void * ) );
|
퀵 정렬 알고리즘을 사용하여 정렬한다.
|
정수 산술
|
int abs ( int n );
long int labs ( long int n );
|
n의 절댓값을 반환한다.
|
div_t div ( int numerator, int denominator );
ldiv_t ldiv ( long numerator, long denominator );
|
numerator를 denominator로 나누어 div_t 또는 ldiv_t 구조체에 quot 멤버에는 몫을, rem 멤버에는 나머지를 채운 뒤 반환한다.
|