본문으로 바로가기
homeimage

함수

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

    C언어 길이를 지정하여 두 개의 문자열 합침 함수 strncat()

    C함수 길이를 지정하여 두 개의 문자열 합침 strncat() 2개의 문자열을 인수로 받아서 1개의 문자열로 합칩니다. 헤더: string.h 형태: char * strncat( char *dest, const char *src, size_t n) 인수: char *dest 연결될 문자열 char *src 붙여 넣기할 문자열 size_t sz src 문자열에서 붙여 넣기할 문자 개수 반환: 2개의 문자열을 합쳐진 문자열을 반환. 즉, 첫 번째 인수인 dest 포인터 strcat()와 마찬가지로 2개의 문자열을 인수로 받아서 1개의 문자열로 합칩니다. 차이라면 길이를 지정하여 복사할 2번째 문자열의 앞에서 몇 번째까지를 붙여 넣기 할지를 지정할 수 있습니다. 주의해야할 점 은 합쳐진 문자열은 새로운 메모리..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 두개의 문자열을 합침 함수 strcat()

    C함수 두개의 문자열을 합침 strcat() 2개의 문자열 인수를 받아서 1개의 문자열로 합칩니다. 주의해야할 점 은 합쳐진 문자열을 첫 번째 인수의 포인터 배열에 저장된다는 것입니다. 그러므로 첫 번째 인수의 포이터나 배열은 합쳐진 문자열 크기만큼 메모리를 확보해야 합니다. strcat()는 첫번째 인수의 메모리에서 '\0'을 찾아 그 부분부터 2번째 인수의 문자열을 복사하므로 주의해야 합니다. 헤더: string.h 형태: char * strcat( char *dest, const char *src) 인수: char *dest 연결될 문자열 char *src 복사할 문자열 반환: 2개의 문자열이 합쳐진 문자열 위치를 반환. 즉, 첫 번째 인수 문자열 포인터 C언어 strcat() 함수 예제 #incl..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 시그널 집합에 모든 시그널 정보 추가 함수 sigfillset()

    C함수 시그널 집합에 모든 시그널 정보 추가 sigfillset() sigemptyset() 함수는 시그널 집합 변수의 모든 내용을 삭제한다면, sigfillset() 함수는 시그널 집합 변수에 모든 시그널을 추가합니다. 헤더: signal.h 형태: int sigfillset(sigset_t *set) 인수: sigset_t *set 시그널 집합 변수 반환: 0 == 집합 변수에 모든 시그널 정보를 넣었음 -1 == 실패했음 리눅스에는 매우 다양한 시그널이 있습니다. 이 시그널을 하나씩 처리하거나 여러 개를 하나로 묶어서 한꺼번에 처리할 수 있습니다. 시그널 집합에 sigfillset(), sigemptyset(), sigaddset(), sigdelset()으로 시그널을 추가·삭제할 수 있으며 sig..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 시그널 집합에 시그널이 있는지 확인 함수 sigismember()

    C함수 시그널 집합에 시그널이 있는지 확인 sigismember() 시그널 집합 변수에서 지정한 시그널이 있는 확인합니다. 헤더: signal.h 형태: int sigismember(sigset_t *set, int signum) 인수: sigset_t *set 시그널 집합 변수 int signum 시그널 번호 반환: 1 == 집합에 시그널이 있음 0 == 집합에 시그널이 없음 -1 == 확인 실패 리눅스에는 매우 다양한 시그널이 있습니다. 이 시그널을 하나씩 처리하거나 여러 개를 하나로 묶어서 한꺼번에 처리할 수 있습니다. 시그널 집합에 sigfillset(), sigemptyset(), sigaddset(), sigdelset()으로 시그널을 추가·삭제할 수 있으며 sigismember()로 시그널 ..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 시그널 집합에서 시그널을 제거 함수 sigdelset()

    C함수 시그널 집합에서 시그널을 제거 sigdelset() 시그널 집합 변수에서 지정한 시그널을 제거합니다. 헤더: signal.h 형태: int sigdelset(sigset_t *set, int signum) 인수: sigset_t *set 시그널 집합 변수 int signum 시그널 번호 반환: 0 == 집합 변수에서 성공적으로 제거했음 -1 == 실패했음 리눅스에는 매우 다양한 시그널이 있습니다. 이 시그널을 하나씩 처리하거나 여러 개를 하나로 묶어서 한꺼번에 처리할 수 있습니다. 시그널 집합에 sigfillset(), sigemptyset(), sigaddset(), sigdelset()으로 시그널을 추가·삭제할 수 있으며 sigismember()로 시그널 존재 여부를 확인할 수 있습니다. 그림..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 시그널 집함에 시그널 추가 sigaddset()

    C함수 시그널 집함에 시그널 추가 sigaddset() 시그널 집합 변수로 시그널을 추가합니다. 헤더: signal.h 형태: int sigaddset(sigset_t *set, int signum) 인수: sigset_t *set 시그널 집합 변수 int signum 시그널 번호 반환: 0 == 집합 변수에 성공적으로 추가했음 -1 == 실패했음 리눅스에는 매우 다양한 시그널이 있습니다. 이 시그널을 하나씩 처리하거나 여러 개를 하나로 묶어서 한꺼번에 처리할 수 있습니다. 시그널 집합에 sigfillset(), sigemptyset(), sigaddset(), sigdelset()으로 시그널을 추가·삭제할 수 있으며 sigismember()로 시그널 존재 여부를 확인할 수 있습니다. 그림으로 표현하면 ..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 시그널 집합 내용을 모두 삭제 함수 sigemptyset()

    C함수 시그널 집합 내용을 모두 삭제 sigemptyset() 시그널 집합 변수의 모든 내용을 삭제합니다. 헤더: signal.h 형태: int sigemptyset(sigset_t *set) 인수: sigset_t *set 시그널 집합 변수 반환: 0 == 집합 변수를 성공적으로 비웠음 -1 == 실패했음 리눅스에는 매우 다양한 시그널이 있습니다. 이 시그널을 하나씩 처리하거나 여러 개를 하나로 묶어서 한꺼번에 처리할 수 있습니다. 시그널 집합에 sigfillset(), sigemptyset(), sigaddset(), sigdelset()으로 시그널을 추가·삭제할 수 있으며 sigismember()로 시그널 존재 여부를 확인할 수 있습니다. 그림으로 표현하면 아래와 같습니다. 시그널의 종류는 아래와 ..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 파일 존재 접근 권한 확인 함수 access()

    C함수 파일 존재 접근 권한 확인 access() access()는 프로세스가 지정한 파일이 존재하는지, 읽거나 쓰거나 실행이 가능한 지를 확인하는 함수입니다. 만일 지정한 파일이 심볼릭 링크라면 링크의 원본을 체크합니다. 헤더: unistd.h 형태: int access(const char *pathname, int mode) 인수: char *pathname 파일이나 디렉토리 전체 이름 int mode 검사할 내용 반환: 0 == 가능 또는 파일이 존재함 -1 == mode 에 대해 하나 이상 거절되었거나 에러가 있음. 자세한 내용은 errno에 세팅됨 access()의 첫 번째 인자는 파일이나 디렉토리의 전체 이름이며, 두 번째 인자는 체크할 내용을 지정하게 됩니다. int access(const ..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 문자열 끝에서부터 문자 위치 검색 함수 rindex()

    C함수 문자열 끝에서부터 문자 위치 검색 rindex() rindex()는 문자열 중에 특정 문자의 위치를 오른쪽에서 왼쪽으로 찾아 주는 함수입니다. 예를 들어 "badayak.com"이라는 문자열이 있다면 맨 오른쪽의 'y' 문자의 위치(포인터)를 구하고 싶다면 아래와 같이 rindex()함수를 이용하시면 됩니다. ptr = rindex( str_sample, 'y'); 헤더: string.h 형태: char *rindex(const char *s, int c) 인수: char *s 검색 대상 문자열 int c 검색할 문자 반환: 문자를 찾았으면 문자가 있는 위치를, 찾는 문자가 없다면 NULL을 반환 C언어 rindex() 함수 예제 #include #include int main( void) { c..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 문자열 중에 문자 위치 찾기 함수 index()

    C함수 문자열 중에 문자 위치 찾기 index() index()는 문자열 중에 특정 문자의 위치를 찾아 주는 함수입니다. 헤더: string.h 형태: char *index(const char *s, int c) 인수: char *s 검색 대상 문자열 int c 검색할 문자 반환: 문자를 찾았으면 문자가 있는 위치를, 찾는 문자가 없다면 NULL을 반환 C언어 index() 함수 예제 #include #include int main( void) { char *str_sample = "badayak.com"; char *ptr; ptr = index( str_sample, 'y'); // 'y' 문자를 찬고 그 위치를 ptr 에 반환합니다. if ( ptr) printf( "%s\n", ptr); ptr ..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 프로세스 생성 함수 fork()

    C함수 프로세스 생성 fork() fork()는 현재 실행되는 프로세스에 대해 복사본 프로세스를 생성합니다. 헤더: unistd.h 형태: pid_t fork(void) 인수: - 반환: pid_t -1 : 실패 0 == 자식 프로세스, 새로 생성된 프로세스임 0 < 생성된 자식 프로세스 PID Microsoft Windows 프로그래밍만 해 왔던 저로서는 참 신기하면서도 마음에 드는 함수였습니다. 물론 Microsoft Windows 프로그램은 GUI가 대부분이므로 fork()로 프로세스를 새로 만들기에는 무리가 있습니다만, 실행 중에 독립된 작업이 가능하다면 프로세스를 별개로 나누어 실행하는 것이 여러 모로 편리하고, 프로그램 작성에도 작업에 따라 집중할 수 있어 좋습니다. fork()함수는 마치 마..
  • thumbnail
    컴퓨터/프로그래밍

    C언어 다른 프로그램 실행 및 대기 함수 system()

    C함수 다른 프로그램 실행 및 대기 system() 다른 프로그램을 실행하고 종료할 때까지 기다립니다. 예제를 먼저 보시겠습니다. #include #include int main() { system( "ls -al"); printf( "system() 시행 후에, 이 문자열이 출력됩니다.n"); } 실행하면 아래와 같이 출력됩니다. ]$ ./a.out 합계 72 drwxr-xr-x 2 jwjw jwjw 4096 9월 30 13:41 . drwxr-xr-x 7 jwjw jwjw 4096 9월 25 06:20 .. -rwxrwxr-x 1 jwjw jwjw 4815 9월 30 13:41 a.out -rw-r--r-- 1 jwjw jwjw 146 9월 30 13:41 test.c -rw-r--r-- 1 jwjw..
    최근글
    이모티콘창 닫기
    울음
    안녕
    감사해요
    당황
    피폐

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