<개요>
현재 디렉토리 위치를 구하는 함수이다.
<헤더 파일>
#include <unistd.h>
<프로토 타입>
char *getcwd(char *buf, size_t size);
char *get_current_dir_name(void);
char *getwd(char *buf);
<getcwd 함수 사용법>
char *getcwd(char *buf, size_t size);
함수 사용 이전에 미리 문자열을 만든다.
호출시 문자열(buf)과 문자열의 길이(size)를 지정한다.
buf의 값으로 NULL이 입력되었을 때의 결과는 정의되어있지 않다.
<get_current_dir_name 함수 사용법>
char *get_current_dir_name(void);
내부적으로 충분히 큰 배열을 할당한 이후 현재 디렉토리를 기입하고 그 포인터를 리턴한다.
(주의) _GNU_SOURCE가 define 되었을 때면 사용 가능
<getwd 함수 사용법>
char *getwd(char *buf);
입력되는 문자열 포인터는 MAX_PATH보다 커야 한다.
(주의) _BSD_SOURCE 나 _XOPEN_SOURCE_EXTENDED 가 define 되었을 때만 사용 가능
<리턴값>
에러가 났을 경우 NULL이 리턴되며 에러가 나지 않았을 경우 buf 포인터가 리턴된다.
<출처>
매뉴얼
#man getcwd