본문으로 바로가기
homeimage

컴퓨터/프로그래밍

해당되는 글 307
  • thumbnail
    컴퓨터/프로그래밍

    C언어 파일로 서식에 맞추어 문자열 출력 함수 dprintf()

    C dprintf() 파일로 서식에 맞추어 문자열 출력 함수 서식에 맞추어 파일로 출력합니다. 헤더: stdio.h 형태: int dprintf( int fd, const char *format, ...) 인수: int fd 파일 디스크립터 const char *format 출력할 데이터 서식 ... 서식에 맞춘 변수 나열 반환: int 출력된 문자 수를 반환하며 오류가 발생하면 음수를 반환합니다. 서실 변환 문자열 변환 문자열 의미 %o 8진 정수 형식으로 입력 %d 10진 정수 형식으로 입력 %ld long형 10진 정수 형식으로 입력 %x 16진 정수 형식으로 입력 %f float 형 형식으로 입력 %lf double 형 형식으로 입력 %c 문자 형식으로 입력 %s 문자열 형식으로 입력 서식 문자열..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 메모리 영역으로 크기만큼 서식에 맞추어 문자열 출력 함수 snprintf()

    C snprintf() 메모리 영역으로 크기만큼 서식에 맞추어 문자열 출력 함수 메모리 영역으로 서식에 맞추어 출력합니다. snprintf()는 매우 안전한 함수로 지정한 길이에 해당하는 위치에 반드시 NULL문자를 삽입해 줍니다. 즉, 버퍼 크기가 10이고 snprintf()에 버퍼 크기 10으로 요청하면 변환되는 문자열이 버퍼 크기보다 크다고 해도 9개의 문자를 입력해 준 다음 10번째에 NULL이 대입됩니다. 즉, 버퍼 크기를 정확히 알려주면 오버플로우가 발생하지 않습니다. 헤더: stdio.h 형태: int snprintf( char *s , size_t size, const char *format, ...) 인수: char *s 서식에 맞추어 저장할 메모리 영역의 포인터 size_t size 출..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 메모리 영역으로 서식에 맞추어 출력 sprintf()

    C sprintf() 메모리 영역으로 서식에 맞추어 출력 함수 메모리 영역으로 서식에 맞추어 출력합니다. 헤더: stdio.h 형태: int sprintf( const char s, const char *format, ...) 인수: char *s 서식에 맞추어 저장할 메모리 영역의 포인터 const char *format 출력할 데이터 서식 반환: int 출력된 문자 수를 반환하며 오류가 발생하면 음수를 반환합니다. 서실 변환 문자열 변환 문자열 의미 %o 8진 정수 형식으로 입력 %d 10진 정수 형식으로 입력 %ld long형 10진 정수 형식으로 입력 %x 16진 정수 형식으로 입력 %f float 형 형식으로 입력 %lf double 형 형식으로 입력 %c 문자 형식으로 입력 %s 문자열 형식으..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 이진트리 제거 함수 tdestroy()

    C tdestroy() 이진 트리 제거 함수 tdestroy()는 이진 트리 데이터를 제거 합니다. 헤더: #define _GNU_SOURCE #include 형태: void tdestroy(void *root, void (*free_node)(void *nodep)) 인수: void *rootp 이진 트리 포인터 void (*free_node)(void *nodep) 노드를 삭제하는 함수 포인터 반환: - tdestroy()는 glibc의 확장 기능으로 제공하는 함수이므로 _GNU_SOURCE 정의가 필요합니다. 프로그램 소스 상단에 아래의 문구를 삽입하세요. #define _GNU_SOURCE // 반드시 삽입 #include #include #include #include 선형 리스트와 이진트리 정..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 이진트리 삭제 함수 tdelete()

    C tdelete() 이진트리 삭제 함수 tdelete()는 이진 트리에서 데이터를 삭제합니다. 헤더: search.h 형태: void *tdelete(const void *key, void **rootp, int (*compar)(const void *, const void *)) 인수: const void *key 추가하려는 자료의 포인터 주소 void **rootp 이진 트리 포인터 int (*compar)(const void *, const void *) 두 노드를 비교하기 위한 함수 포인터 반환: - 선형 리스트와 이진트리 정렬된 테이블은 bsearch() 함수로 아주 빠르게 검색할 수 있으나 정렬되어 있지 않으면 제대로 검색할 수 없습니다. 그래서 새로운 자료를 등록할 때마다 계속 정렬해 주어..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 부모 프로세스 ID 구하기 함수 getppid()

    C함수 부모 프로세스 ID 구하기 getppid() 부모 프로세스의 ID를 구합니다. 헤더: sys/types.h,unistd.h 형태: pid_t getppid(void) 인수: - 반환: 이 함수는 항상 성공하며 부모 프로세스 ID를 반환합니다. 프로세스 ID 구하는 함수 종류 getpid() 실행 중인 프로세스 ID를 구합니다. getppid() 부모 프로세스의 ID를 구합니다. C언어 getppid() 함수 예제 #include #include int main() { int counter = 0; pid_t pid; printf( "저의 프로세스 ID는 %d 입니다.\n", getpid()); pid = fork(); switch( pid) { case -1 : printf( "자식 프로세스 생성..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 프로세스 ID 구하기 함수 getpid()

    C getpid() 프로세스 ID 구하기 함수 실행 중인 프로세스 ID를 구합니다. 헤더: sys/types.h,unistd.h 형태: pid_t getpid(void) 인수: - 반환: 이 함수는 항상 성공하며 프로세스 ID를 반환합니다. 프로세스 ID 구하는 함수 종류 getpid() 실행 중인 프로세스 ID를 구합니다. getppid() 부모 프로세스의 ID를 구합니다. C언어 getpid() 함수 예제 #include #include int main() { int counter = 0; pid_t pid; printf( "저의 프로세스 ID는 %d 입니다.\n", getpid()); pid = fork(); switch( pid) { case -1 : printf( "자식 프로세스 생성 실패\n"..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 실행 시 긴 이름의 옵션 사용 함수 getopt_long_only()

    C getopt_long_only() 실행 시 긴 이름의 옵션 사용 함수 getopt_long()처럼 프로그램을 실행할 때의 긴 옵션을 처리하며 '-', '--' 모두 긴 이름 옵션으로 검색합니다. 헤더: getopt.h 형태: int getopt_long_only(int argc, char * const argv[], const char *optstring, const struct option *longopts, int *longindex) 인수: int argc 인수의 개수 char * const argv[] 인수 내용 const char *optstring 검색하려는 짧은 옵션들의 문자열 const struct option *longopts 검색하려는 긴 이름의 옵션 모음 int *longindex..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 파일 디스크립터 복사본 만들기 함수 dup2()

    C dup2() 함수 파일 디스크립터 복사본 만들기 함수 파일 디스크립터 복사본을 만듭니다. 원본 디스크립터와 복사된 디스크립터의 읽기/쓰기 포인터는 공유됩니다. 즉, 원본과 복사본 디스크립터마다 따로 읽기/쓰기 포인터가 존재하지 않습니다. 헤더: unistd.h 형태: int dup(int fildes) 인수: int fildes 파일 디스크립터 반환: int 복사된 파일 디스크립터 번호로 사용되지 않은 가장 작은 번호가 자동으로 지정되어 반환됩니다. 함수 실행이 실패되면 -1 이 반환됩니다. 파일 디스크립터 복사본을 만드는 함수로는 dup()와 dup2()이 있습니다. dup()는 사용하지 않는 디스크립터 번호 하나가 자동으로 지정되지만 dup2()는 프로그래머가 원하는 번호로 지정할 수 있습니다. ..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 파일 디스크립터 복사본 만들기 함수 dup()

    C dup() 파일 디스크립터 복사본 만들기 함수 파일 디스크립터 복사본을 만듭니다. 원본 디스크립터와 복사된 디스크립터의 읽기/쓰기 포인터는 공유됩니다. 즉, 원본과 복사본 디스크립터마다 따로 읽기/쓰기 포인터가 존재하지 않습니다. 헤더: unistd.h 형태: int dup(int fildes) 인수: int fildes 파일 디스크립터 반환: int 복사된 파일 디스크립터 번호로 사용되지 않은 가장 작은 번호가 자동으로 지정되어 반환됩니다. 함수 실행이 실패되면 -1 이 반환됩니다. 파일 디스크립터 복사본을 만드는 함수로는 dup()와 dup2()이 있습니다. dup()는 사용하지 않는 디스크립터 번호 하나가 자동으로 지정되지만 dup2()는 프로그래머가 원하는 번호로 지정할 수 있습니다. 지정한 ..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 파일을 지정한 크기로 변경 ftruncate()

    C ftruncate() 파일을 지정한 크기로 변경 함수 파일을 지정한 크기로 변경합니다. 헤더: unistd.h 형태: int ftruncate(int fildes, off_t length) 인수: int fildes 파일 디스크립터 off_t length 파일 크기 반환: int 0 == 성공, -1 == 실패 파일 크기를 변경하는 함수에는 2 가지가 있습니다. truncate() : 파일 이름으로 파일 크기를 변경 ftruncate() : 파일 디스크립터로 파일 크기를 변경 C언어 ftruncate() 함수 예제 예제에서는 파일의 크기를 100 byte로 변경합니다. 파일이 지정된 크기보다 작다면 나머지 채워지는 부분은 '\0'으로 채워지게 됩니다. #include // puts() #include..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 파일을 지정한 크기로 변경 함수 truncate()

    C truncate() 파일을 지정한 크기로 변경 함수 파일을 지정한 크기로 변경합니다. 헤더: unistd.h 형태: int truncate(const char *path, off_t length) 인수: char *path 경로 포함 파일 전체 이름 off_t length 파일 크기 반환: int 0 == 성공, -1 == 실패 파일 크기를 변경하는 함수에는 2 가지가 있습니다. truncate() : 파일 이름으로 파일 크기를 변경 ftruncate() : 파일 디스크립터로 파일 크기를 변경 C언어 truncate() 함수 예제 예제에서는 파일의 크기를 100 byte로 변경합니다. 파일이 지정된 크기보다 작다면 나머지 채워지는 부분은 '\0'으로 채워지게 됩니다. #include // puts()..
    최근글
    이모티콘창 닫기
    울음
    안녕
    감사해요
    당황
    피폐

    이모티콘을 클릭하면 댓글창에 입력됩니다.