Glibc:Functions
GNU C 함수 목록.
데이터 변환 함수
- strtof(): 실수 문자열을 float형 실수로 변환
- strtod(): 실수 문자열을 double형 실수로 변환
- strtoul(): 정수 문자열을 진수 선택하여 unsigned long형 정수로 변환
- strtol(): 정수 문자열을 진수 선택하여 정수로 변환
- atof(): 10진 실수 문자열을 double형 실수로 변환
- atol(): 10진 정수 문자열을 long형 정수로 변환
- atoi(): 10진 정수 문자열을 정수로 변환
파일 및 디렉토리 다루기
- dup2(): 파일 디스크립터 복사본 만들기
- dup(): 파일 디스크립터 복사본 만들기
- ftruncate(): 파일을 지정한 크기로 변경
- truncate(): 파일을 지정한 크기로 변경
- fdopen(): 디스크립터에서 스트림 포인터 구하기
- lseek(): 파일의 임의의 위치로 읽기/쓰기 포인터 이동
- read(): 파일 읽기
- fcntl(): 레코드 잠금
- access(): 파일 존재나 접근 권한을 확인합니다.
- fsync(): 버퍼 내용을 디스크로 쓰기
- sync(): 버퍼 내용을 디스크로 쓰기
- chroot(): 루트 디렉토리 지정]
- fchown(): 소유권 변경하기
- chown(): 소유권 변경하기
- fchmod(): 파일의 접근 권한 변경
- chmod(): 파일 접근 권한 변경
- rename(): 파일 또는 디렉토리 이름을 변경
- remove(): 파일 또는 디렉토리 삭제
- symlink(): 심볼릭 링크를 생성
- unlink(): 링크 삭제
- link(): 링크 생성하기
- rewinddir(): 디렉토리 읽기 위치를 처음으로 돌리기
- readdir(): 디렉토리 안에 있는 항목 구하기
- closedir(): 디렉토리 닫기
- opendir(): 디렉토리 열기
- getcwd(): 현재 작업 디렉토리 구하기
- creat(): 파일 생성
- write(): 파일 쓰기
- close(): 파일 닫기
- open(): 파일 열기
입출력 함수
- fseek(): 파일의 읽기/쓰기 위치 이.동
- rewind(): 파일 읽기/쓰기 위치를 처음으로 초기화
- ftell(): 파일의 읽기/쓰기 위치 구하기
- 입출력(): 함수 clearerr 파일 오류 정보 초기화
- ferror(): 파일 오류 유무 확인
- feof(): 파일의 끝을 확인
- ungetc(): 마지막 읽은 문자를 반환
- fwrite(): 파일에 버퍼 내용을 쓰기
- fread(): 파일로부터 지정한 개수만큼 자료 읽기
- fprintf(): 서식에 맞추어 파일에 출력
- fscanf(): 파일에서 서식에 맞추어 데이터 읽기
- fputs(): 파일에 문자열 출력
- fgets(): 파일에 문자열을 읽기
- fputc(): 파일에 문자 출력
- fgetc(): 파일에서 문자 한 개 읽기
- fclose(): 파일 닫기
- fopen(): 파일 열기
- sprintf(): 메모리 영역으로 서식에 맞추어 출력
- sscanf(): 데이터 영역에서 서식화된 자료를 입력 받음
- printf(): 표준 출력장치로 서식에 맞추어 출력
- scanf(): 표준 입력장치로부터 서식에 맞춘 입력 받음
- puts(): 표준 출력에 문자열을 출력
- gets(): 표준 장치로부터 문자열을 입력 받음
- putchar(): 표출 출력 장치에 문자 출력
- getchar(): 표준 입력 장치로부터 문자 하나를 입력 받음
IPC 관련 함수
- semop(): 세마포어 값을 변경
- semctl(): 세마포어 제어
- semget(): 세마포어 생성 및 접근
- shmctl(): 공유 메모리 정보 확인/변경/제거
- shmdt(): 공유 메모리를 프로세스에서 분리
- shmat(): 공유 메모리를 프로세스에 첨부
- shmget(): 공유 메모리 생성
- msgctl(): 메시큐 상태 정보/변경/삭제
- msgrcv(): 메시지 큐로부터 데이터 수신
- msgsnd(): 메시지 큐로 데이터 전송
- msgget(): 메시지 큐 생성
- mkfifo(): FIFO 파이프 만들기
- pipe(): 파이프를 이용한 IPC
- pclose(): 파이프 닫기
- popen(): 파이프 생성
수학 함수
- log10(): 상용 대수 값 구하기
- log(): 자연 대수 값을 구하기
- exp(): e 의 x 제곱값을 구하기
- tan(): tan 값 구하기
- cos(): cos 값 구하기
- sin(): sin 값 구하기
- sqrt(): 제곱근 구하기
- pow(): 제곱값 구하기
- srand(): 난수 seed 지정
- rand(): 난수 만들기
- modf(): double형 값에서 정수부와 소수부를 구함
- floor(): 소수점 이하 모두 버림
- ceil(): 소수점 이하 모두 올림
- fmod(): double형 나눗셈의 나머지 구하기
- ldiv(): long형 정수 나누기에 대한 후 몫과 나머지 구하기
- div(): int 형 정수 나누기에 대한 후 몫과 나머지 구하기
- fabs(): double형 변수에 대한 절대값 구하기
- labs(): long형 변수에 대한 절대값 구하기
- abs(): int 변수에 대한 절대값 구하기
메모리 관리 함수
- memset(): 메모리를 특정 값으로 초기화
- memcmp(): 두개의 메모리 변수에 대한 내용 비교
- memchr(): 메모리에서 문자 검색
- memmove(): 메모리 영역 복사, 자기 영역도 가능
- memcpy(): 메모리 영역 복사
- realloc(): 동적 메모리의 크기를 변경
- free(): 할당 받은 메모리를 반환
- calloc(): 요소 크기 지정 동적 메모리 할당
- malloc(): 동적 메모리 할당
탐색과 정렬 함수
- qsort(): 퀵소트
- hdestroy(): 해시 테이블 삭제
- hsearch(): 해시 테이블에서 자료 검색
- hcreate(): 해시 테이블 생성
- twalk(): 이진 트리에서 모든 노드의 내용을 확인
- tdelete(): 이진 트리에서 노드 삭제
- tfind(): 이진 트리 검색
- tsearch(): 이진 트리 검색 및 추가
- bsearch(): 이진검색
- lfind(): 테이블에서 테이터 검색
- lsearch(): 테이블에서 테이터 검색 및 추가
프로그램 실행 관련 함수
- getopt_long(): 실행 시 긴 이름의 옵션 사용
- unsetenv(): 환경변수 삭제
- setenv(): 환경변수를 추가 또는 수정
- putenv(): 환경변수를 추가 또는 수정
- getenv(): 환경 변수의 개별값을 구하기
- environ(): 프로그램 실행 환경 값을 가지고 있는 광역변수
- envp(): main함수 인수 중 프로그램 환경을 담고 있는 인수
- getopt(): 프로그램 실행 인수 정보 구하기
- abort(): 강제로 프로그램 종료
- assert(): 주어진 조건 확인
- perror(): 에러 내용을 출력
- strerror(): errno에 대한 에러 내용을 구합니다.
- errno(): 에러 번호 구하기
프로세서 관련 함수
- getgrnam(): 그룹 이름으로 그룹 정보 구하기
- getgrgid(): 그룹 ID로 그룹 정보 구하기
- endgrent(): 그룹파일 닫기
- setgrent(): 그룹파일 읽기 위치를 맨 윗 행으로
- getgrent(): 그룹파일의 내용 읽기
- endpwent(): 암호파일 닫기
- setpwent(): 암호파일에서 읽기 위치를 첫 행으로 이동
- getpwent(): 암호파일로부터 사용자 정보 구하기
- getpwnam(): 로그인 유저 이름으로 사용자 정보 구하기
- getpwuid(): 사용자 ID로 사용자 정보 구하기
- getlogin(): 로그인한 유저 이름을 구하기
- getegid(): 유효 그룹 ID 구하기
- getgid(): 실제 그룹 ID 구하기
- geteuid(): 유효 사용자 ID를 구합니다.
- getuid(): 실제 사용자 ID를 구합니다.
시그널 관련 함수
- sigsuspend(): 시그널 블록 설정 및 대기
- sigpending(): 블록된 시그널 확인
- sigpromask(): 시그널 대기 상태로 설정
- alarm(): 지정 시간에 SIGALRM 전송
- raise(): 프로세스 자신에게 시그널 전송
- pause(): 시그널을 수신할 때까지 대기
- kill(): 시그널 전송
- sigaction(): 시그널 처리를 다양하게
- signal(): 시그널 처리 방법을 설정
- sleep(): 지정한 시간만큼 대기
- sigfillset(): 시그널 집합에 모든 시그널 정보 추가
- sigismember(): 시그널 집합에 시그널이 있는지 확인
- sigdelset(): 시그널 집합에서 시그널을 제거
- sigaddset(): 시그널 집함에 시그널 추가
소켓 관련 함수
- gethostbyname(): 도메인 이름으로 hostent 정보를 구함
- gethostname(): 호스트 이름 구하기
- recvfrom(): 소켓으로부터 자료 수신
- sendto(): 소켓으로 데이터를 전송
- recv(): 소켓으로부터 자료 수신
- send(): 소켓으로 데이터 전송
- accept(): 클라이언트 접속 요청 수락
- connect(): 서버로 접속 요청
- listen(): 클라이언트 접속 요청이 있을 때 까지 대기
- inet_addr(): IP 문자열에서 long 형 숫자 IP주소를 구함
- ntohl(): long 네트워크 바이스 순서를 호스트 바이트 순서로
- ntohs(): short 네트워크 바이트 순서를 호스트 바이트 순서로
- htnol(): 호스트 바이트 순서를 네트워크 바이트 순서로
- htnos(): 호스트 바이트 순서를 네트워크 바이트 순서로
- bind(): 소켓에 IP주소와 포트번호 지정
- socket(): 소켓 생성
날짜와 시간 함수
- clock(): 프로그램 수행 후 지난 시간 구하기
- difftime(): 날짜와 시간 차이 구하기
- strftime(): 날짜와 시간 문자열 구하기
- mktime(): 날짜와 시간 지정으로 날짜와 시간 정수 값 구하기
- gmtime(): time_t형 값에서 세계 표준 시간 정보 구하기
- localtime(): time_t형 값에서 지역 시간 정보 구하기
- ctime(): 초단위 시간을 읽기 편한 문자열로 변환
- time(): 현재 시간 값 구하기
문자열 처리 함수
- isdigit(): 문자가 숫자 문자인( '0'~'9')지를 판별
- iscntrl(): 문자가 제어문자인지를 판별
- isblank(): 공백문자 또는 탭 문자인지를 판별
- isascii(): 문자가 ASCII 문자 인지를 판별
- isalpha(): 영문자 인지를 판별
- isalnum(): 영문자 인지 숫자 문자인지를 판별
- strncmp(): 길이 만큼 문자열 비교
- strcmp(): 문자열 비교
- strncat(): 길이를 지정하여 두 개의 문자열 합침
- strcat(): 두개의 문자열을 합침
- sigemptyset(): 시그널 집합 내용을 모두 삭제
- strtok(): 문자열을 문자로 자르기
- strpbrk(): 문자열에서 특정 문자들이 시작하는 위치의 포인터 구하기
- strcspn(): 문자열에서 특정 문자에 포함되지 않는 문자열 길이를 구함
- strspn(): 문자열에서 특정 문자로 구성된 문자열의 길이 구하기
- strstr(): 문자열에서 임의의 문자열의 위치를 검색
- strrchr(): 문자열의 뒷 부분부터 임의의 문자 위치를 검색
- strchr(): 문자열에서 임의의 문자 위치 검색
- strlen(): 문자열의 길이 구하기
- strdup(): 문자열의 clone 만들기
- strncpy(): 지정한 개수 만큼 문자열 복사
- strcpy(): 문자열을 복사
- strncasecmp(): 대소문자를 무시하고 지정한 길이만큼 문자열 비교
- strcasecmp(): 대소문자 무시하고 문자열 비교
- tolower(): 대문자를 소문자로 변환하여 반환
- toupper(): 소문자를 대문자로 변환
- isxdigit(): 문자가 16진수 수치 문자인지를 판별
- isupper(): 문자가 대문자인지를 판별
- isspace(): 문자가 공백 문자인지를 판별
- ispunct(): 문자가 구획문자인지를 판별
- isprint(): 문자가 인쇄 가능 문자인지를 판별
- islower(): 문자가 소문자인지를 판별
- isgraph(): 문자가 인쇄 가능 문자인지를 판별
사용자와 그룹 관리 함수
- getgrnam(): 그룹 이름으로 그룹 정보 구하기
- getgrgid(): 그룹 ID로 그룹 정보 구하기
- endgrent(): 그룹파일 닫기
- setgrent(): 그룹파일 읽기 위치를 맨 윗 행으로
- getgrent(): 그룹파일의 내용 읽기
- endpwent(): 암호파일 닫기
- setpwent(): 암호파일에서 읽기 위치를 첫 행으로 이동
- getpwent(): 암호파일로부터 사용자 정보 구하기
- getpwnam(): 로그인 유저 이름으로 사용자 정보 구하기
- getpwuid(): 사용자 ID로 사용자 정보 구하기
- getlogin(): 로그인한 유저 이름을 구하기
- getegid(): 유효 그룹 ID 구하기
- getgid(): 실제 그룹 ID 구하기
- geteuid(): 유효 사용자 ID를 구합니다.
- getuid(): 실제 사용자 ID를 구합니다.