Linux

    C / LINUX access()

    함수 기능 인자로 지정한 파일에 대해 사용자 , 프로세스 접근가능한지 판단하는 시스템호출 함수 원형 #include int access(const char *pathname, int mode) 리턴값 : 성공시 0 에러시 -1 리턴 함수 파라메터 pathname 인자로 지정한 파일 mode R_OK, W_OK, X_OK, F_OK 파일존재여부판정 함수 예제 access1 #include #include #include int main(int argc, char *argv[]){ int i; if(argc

    C / LINUX atexit(3)

    함수 기능 exit() 함수가 실행될 때 자동으로 실행될 함수들을 등록하는 함수 함수 원형 #include int atexit(void (*__func__)(void)); 함수 파라메터 __func__ 함수 포인터 함수 예제 #include #include void ssu_out(void); int main(void){ if(atexit(ssu_out)){ fprintf(stderr, "atexit error\n"); exit(1); } exit(0); } void ssu_out(void){ printf("atexit succeeded!\n"); } 리눅스시스템 프로그래밍 - 홍지만 저 교재 내에 있는 예제를 바탕으로 작성한 글 입니다.

    C / LINUX exit(3) _Exit(2) _exit(2)

    함수 기능 exit 프로그램을 정상 종료시킬 떄 사용하는 라이브러리 함수 _Exit, _exit 프로그램 종료 시스템호출 함수 함수 원형 #include void exit(int status); void _Exit(int status); #include void _exit(int status); 함수 파라메터 status 프로세스 종료 상태 함수 예제 _exit #include #include int main(void){ printf("Good afternoon?"); _exit(0); } exit #include #include int main(void){ printf("Good afternoon?"); exit(0); } 리눅스시스템 프로그래밍 - 홍지만 저 교재 내에 있는 예제를 바탕으로 작성한 글..

    C / LINUX tmpnam, tmpfile

    함수 기능 임시 파일을 생성하는 라이브러리함수 함수 원형 #include char *tmpnam(char *buf); FILE *tmpfile(); 리턴 값 : 고유한 임시파일의 경로이름을 가리키는 포인터, 고유이름 못만들면 NULL 함수 파라메터 buf 파일버퍼 함수 예제 tmpnam #include #include #define MAX_LINE 4096 int main(void){ char buf[MAX_LINE]; char name[L_tmpnam]; FILE *fp; printf("temp file 1: %s\n",tmpnam(NULL)); tmpnam(name); printf("temp file 2: %s\n",name); if((fp=tmpfile())==NULL){ fprintf(stderr..

    C / LINUX scanf(3) fscanf(3) sscanf(3)

    함수 기능 데이터를 foramt에서 지시하는 대로 서식화 변환하여 입력 받는 라이브러리 함수 fscanf fp가 가리키는 파일에 입력 sscanf 파일이 아닌 인자 buf가 가리키는 문자 배열에서 읽음 함수 원형 #include int scanf(const char *format, ...); int fscanf(FILE *fp, const char *format, ...); int sscanf(const char *buf, const char *format, ...); 함수 파라메터 format 형식지정자 buf 문자열을 저장할 buf 함수 예제 fscanf #include #include #define BUFFER_SIZE 1024 int main(void){ char *fname = "ssu_test..

    C / LINUX sprintf(3) snprintf(3)

    함수 기능 형식에 맞춰서 문자열을 출력해주는 함수 함수 원형 #include int sprintf(char *buf, const char *format, ...); int snprintf(char *buf, size_t size, const char *format, ...); 함수 파라메터 format 형식지정자 buf 출력 문자열 저장 버퍼 size 어느정도 사이즈로 출력할것인가 함수 예제 #include #include #include int main(int argc, char *argv[]) { char buf[BUFSIZ]; sprintf(buf, "%d", 123); printf("%s\n", buf); exit(0); } 리눅스시스템 프로그래밍 - 홍지만 저 교재 내에 있는 예제를 바탕으로 작..

    C / LINUX printf(3) fprintf(3)

    함수 기능 주어진 형식에 맞추어진 문자열을 파일에 출력하는 함수 함수 원형 #include int printf(const char *format, ...); int fprintf(FILE *fp, const char *format, ...); 함수 파라메터 format 형식 지정자 함수 예제 #include #include #include int main(int argc, char *argv[]) { char *text = "My test txt!\n"; FILE *fp; fp = fopen("ssu_test.txt", "w"); printf("%s", text); fprintf(fp, "%s", text); exit(0); } 리눅스시스템 프로그래밍 - 홍지만 저 교재 내에 있는 예제를 바탕으로 작성한..

    C / LINUX ftell(3) fseek(3) rewind(3)

    #include #include int main(void){ char *fname = "ssu_test.txt"; FILE *fp; long position; int character; if ((fp=fopen(fname,"r"))==NULL){ fprintf(stderr, "fopen error for %s\n",fname); exit(1); } printf("Input number>>"); scanf("%ld",&position); fseek(fp,position-1,SEEK_SET); character=getc(fp); printf("%ldth character -> %c\n",position,character); exit(0); } 함수 기능 ftell 파일 스트림의 현재 오프셋 위치가 파일의 시..

    C / LINUX fread(3), fwrite(3)

    함수 기능 fread 사이즈 크기를 갖는 데이터를 한 단위로하여 nobj인자만큼 읽도록 하는 함수 fwrite size크기만큼의 데이터를 nobj 인자만큼 출력 함수 원형 #include size_t fread(void *ptr, size_t size, size_t nobj, FILE *fp); size_t fwrite(const void *ptr, size_t size, size_t nobj, FILE *fp); 함수 파라메터 ptr 읽고 쓸 데이터 위치 size 크기 nobj 얼마만큼 읽을 것인가 fp 파일포인터 함수 예제 fread #include #include struct ssu_pirate { unsigned long booty; unsigned int beard_length; char nam..

    C / LINUX stat() fstat() lstat()

    함수 기능 pathname/fildes파일의 stat구조체를 리턴하는 시스템호출 stat 지정한 pathname에 해당하는 파일에 대한 정보를 넣은 stat구조체를 buf로 리턴 fstat 지정 filedes 오픈 확인하고 해당파일에 대한 정보를 넣은 stat구조체를 buf로 리턴 lstat 심볼릭 링크 파일 자체에 대한 정보를 넣은 stat구조체 자체 리턴 함수 원형 #include #include #include int stat(const char *restrict pathname, struct stat *restrict buf) int fstat(int filedes, struct stat *buf) int lstat(const char *restrict pathname, struct stat *r..