All pastes #1698338 Raw Edit

copy w/buffer

public c v1 · immutable
#1698338 ·published 2009-12-02 13:14 UTC
rendered paste body
#pragma hdrstop#include <stdio.h>#include <stdlib.h>#include <alloc.h>#include <io.h>#include <fcntl.h>#pragma argsused#define BUFSIZE 1024int main(int argc, char **argv){        char *buffer;        int handle_in, handle_out, bytes_read, written;        if( (buffer = (char*) calloc(BUFSIZE,1)) == NULL)        {                printf("blad alokacji pamieci");                exit(1);        }        if( (handle_in = open(argv[1], O_BINARY)) == -1)        {                printf("Blad. Nie moglem otworzyc pliku.");                exit(1);        }        if( (handle_out = open(argv[2], O_CREAT | O_BINARY)) == -1)        {                printf("Blad. Nie moglem zapisac pliku.");                exit(1);        }        if(argc < 3)        {                printf("Blad. Podales za malo argumentow. Sposob uzycia:\ncopy [zrodlo] [cel]");                exit(1);        }        while(bytes_read = read(handle_in, buffer, BUFSIZE))        {           written = write(handle_out, buffer, bytes_read);           if (written != bytes_read)             fprintf(stderr," Blad zapisu\n");        }        close(handle_out);        close(handle_in);        free(buffer);        //getchar();        return 0;}