안녕하세요!! ㅠ 부탁드립니다..ㅠ
미드미
/* 이진파일을 복사 하는 프로그램(FileCopyGood.c) */
/* 주:(실행 방법) FileCopyGood 입력파일명 출력파일명 */
#include stdio.h
#include string.h
#include stdlib.h
#define BUFFER_SIZE 1024
/* 에러 메시지를 출력하고 종료하는 함수 */
void errorexit(char *pstr, int flag)
{
fprintf(stderr, pstr);
if (flag)
exit(EXIT_FAILURE);
else
exit(EXIT_SUCCESS);
}
int main(int argc, char *argv[])
{
/* FILE *형 스트림 포인터 */
FILE *pfile1 = NULL, *pfile2 = NULL;
/* 파일명의 포인터(argv) */
char *pfilename1 = , *pfilename2 = ;
size_t ret;
unsigned int i = 0; /* 루프 제어 변수 */
char buffer[BUFFER_SIZE] = ; /* 파일 입출력용 버퍼 */
/* 프로그램 시작시의 인수를 검증해 도움말을 출력한다 */
if (argc != 3 || ! strcmp(argv[1], /? )
|| ! strcmp(argv[1], -? )) {
errorexit(파일 복사 프로그램\n
실행 방법:FileCopyGood 입력파일명 출력파일명\n,
EXIT_SUCCESS);
}
pfilename1 = argv[1]; /* 인수의 입력 파일명을 얻어온다 */
pfilename2 = argv[2]; /* 인수의 출력 파일명을 얻어온다 */
/* 파일을 이진 읽기 모드로 연다(입력용) */
if ( (pfile1 = fopen(pfilename1, rb )) = = NULL)
errorexit(입력 파일이 열리지 않았습니다. \n, EXIT_FAILURE);
/* 파일을 이진 쓰기 모드로 열린다(출력용) */
if ((pfile2 = fopen(pfilename2, wb)) == NULL)
errorexit(출력 파일이 열리지 않았습니다. \n, EXIT_FAILURE);
/* 파일을 끝까지 읽고 쓴다 */
while (! feof(pfile1)) {
/* 배열 buffer에 입력 데이터를 읽는다 */
ret = fread(buffer, sizeof(char), sizeof buffer, pfile1);
if (ret) {
/* 배열 buffer의 내용을 출력 파일에 쓴다 */
if (fwrite(buffer, sizeof(char), ret, pfile2)
! =ret) {
/* 파일을 닫는다 */
fclose(pfile1);
fclose(pfile2);
errorexit(파일 쓰기에 실패했습니다.\n,
EXIT_FAILURE);
}
}
}
/* 파일을 닫는다 */
fclose(pfile1);
fclose(pfile2);
return 0;
}
오류가 많이 나서 그러는데,,ㅠㅠ 어디 부분을 수정하고
어떻게 해야하는지,,,ㅠ
갈켜주세요...ㅠㅠ
c++로 해서 파인텀으로 옮겨서 작업을 하는데,,ㅠㅠ
안되서 그러는데 부탁드립니다..ㅠㅠ