AIX fortran calling character function written in C

1. Question on writing c program implement cp function using UNIX system calls - read, write, etc.

I need to write a c program that will perform like the cp command in UNIX
and copy one file to another. I need to use the UNIX system calls read(),
write(), open(), close(). I know how to open the source file for read access
and destination file for write access with open(), but I am unsure of how to
use read() and write().

I know read takes my file descriptor (fd) of the source file I opened as its
1st arguement. For the second, I need to put those bytes in some sort of
buffer right? Could I just write them directly to the destination file
instead of storing into a buffer? Well if I have to make a buffer for input
I read in I do this:

c = (char *) calloc(100, sizeof(char));

Is that right? If I do this will it work for all files whether they are
binary or ascii files?

The 3rd arg of read() takes in how many  bytes to read, how do I tell it to
read in the entire source file?

So for read, this is what I have so far: read(fd, c, ????) where fd is my
source file descriptor and c as define above.

As for write, I have: write(fd2, ???, ???) where fd2 is the file descriptor
of my destination file. How do I specify it to write what I read from the
input source file and write all of those bytes inputted? Thanks for any

2. Looking for YP passwd support.

3. how to know the instruction address of calling function within called function?

4. HELP! Windows For WorkGroups & UTP ERRORS!!!! -------------

5. Browser calls CGI C function which sets an env var and call a c function crashes

6. Ooops kernel messages (2.0.20)

7. how to call Fortran function from a C program

8. meaning of loghost in /etc/hosts

9. Calling C from Fortran: Function always returns zero?

10. AIX Fortran error - sequential write vs. binary.

11. How the programmer write OS function call?

12. Calling functions written in BASH from KSH?

13. WRite system call and printf function