C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[53398] 설명부탁드려요..
김가영 [kieun12] 1203 읽음    2008-05-13 00:29
어떠한 프로그램인지 설명및 주석좀 부탁드려요...

#include <stdio.h>
#include <dirent.h>
#include <string.h>
#include <stdlib.h>

int match(const char*, const char*);

void find_entry(char* dirname, char* preffix, int cont)
{
static DIR *dp=NULL;
struct dirent *d;

if(dp==NULL || cont==0)
{
  if(dp != NULL)
   close(dp);
 
  if((dp=opendir(dirname))==NULL)
   exit(0);
}

while(d=readdir(dp))
{
  if(d->d_ino==0)
   continue;
   if(match(d->d_name, preffix))
   printf("%s \n", d->d_name);
}
closedir(dp);
dp=NULL;
}

int match(const char* s1, const char* s2)
{
if(strlen(s1) > strlen(s2))
  return (strncmp(s1, s2, strlen(s2))==0);
else return 0;
}

main(int argc, char** argv)
{
if(argc != 3) printf("Useage : directory preffix \n");
find_entry(argv[1], argv[2], 0);

}


===============================================================================================

#include <stdio.h>
#include <fcntl.h>

void main(int argc, char** argv)
{
int fd1, fd2;
char buf[1];
ssize_t r;

close(1);

if( (fd2=open(argv[2], O_WRONLY | O_CREAT)) == -1)
{
  perror("fd2 open error");
}

if( (fd1=open(argv[1], O_RDONLY))==-1)
{
  perror("fd1 open error");
}

while( (r=read(fd1, &buf, sizeof(buf) ))>0)
{
  printf("%s", buf);
}
}

+ -

관련 글 리스트
53398 설명부탁드려요.. 김가영 1203 2008/05/13
53400     숙제는 직접(내용 무) 열씸! 1181 2008/05/13
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.