게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
리눅스 함수 맞나 봐주세요 ㅠ
게시물ID : computer_130382짧은주소 복사하기
작성자 : 칸쵸말고닥쵸
추천 : 0
조회수 : 383회
댓글수 : 4개
등록시간 : 2013/11/26 01:48:40

함수 실습 하는데 막히는게 많네요 ㅠㅠ

조언부탁드립니다 ..


1.
#include  <stdio.h>
#include  <stdlib.h>
#include  <fcntl.h>
#include  <unistd.h>
#define    MAX    100
main()
{
     int   fd,  m;
     char  buf[ MAX ];
     long  int  length = 0;
     if( ( fd = open( test1.txt, O_RDONLY ) ) == -1 ) {
          perror( open failed );
          exit( 1 );
     }
     while( ( m = read( fd, buf, MAX ) ) > 0 )
          length += m;
     printf( Total characters in test1.txt : %ld\n, length );
     close( fd );
}

동작해설:
gcc 실행시 test1.txt 읽기전용으로 읽어들이는데
이 때 조건부 중 최저글자제한 0보다 큰 경우
실행실패 및 종료.
이후 Tatal characters in 00 을 출력하여 텍스트파일 내 글자수 표기

2. 
#include  <stdio.h>
#include  <stdlib.h>
#include  <fcntl.h>
#include  <unistd.h>
main()
{
     int   fd,  m;
     char  buf[ 20 ] = Linux C Programming;
     if( ( fd = open( test2.txt,
                 O_WRONLY | O_CREAT, 0644 ) ) == -1 ) {
          perror( open failed );
          exit( 1 );
     }
     write( fd, buf, 20 );
     close( fd );
}

동작해설:
gcc 실행시 test2.txt를 쓰기전용으로 읽어들이고
O_CREAT로 만약 pathname 파일이 존재하지 않을경우 파일을 생성하며
조건 부합시 실행실패 및 종료
이후 buf[20]으로 설정해둔 "Linux C Programming" 표기


동작 해설부분 맞나 확인부탁드립니다
꼬릿말 보기
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호