C - C++ Files - File copy

#include <iostream>
#include <fstream>                                                     
#include <cstdlib>
using namespace std;                                                   
 
void print_error(const char*, const char* = " ");                      
 
int main(int argc, char* argv[])                                       
{
  if (3 != argc)
    print_error("usage: copy source dest");
 
  ifstream in( argv[1], ios::binary );                              
  if (!in)
    print_error( "can't open", argv[1] );
 
  ofstream out( argv[2], ios::binary );                             
  if (!out)
    print_error( "can't open", argv[2] );
 
  char ch;                                                          
 
  while ( in.get(ch) )                                              
    out.put( ch );                                               
 
  if ( !in.eof() )                                                  
    print_error("something strange happened");
 
  return 0;
}
 
 
void print_error(const char* p, const char* p2) 
{
  cerr << p << ' ' << p2 << '\n';                                   
  exit(1);                                                          
}

and

#include<iostream.h>
#include<conio.h>
#include<fstream.h>
#include<stdio.h>
 
void main()
{
  clrscr();
  char ch,st[100];
  ofstream o("r.txt");
 
  do 
  {
    ch=cin.get();
    fflush(stdin);
    o.put(ch);
  } while(ch!='.');
 
  o.close();
  ifstream i;
  i.open("r.txt");
  ofstream k;
  k.open("m.txt");
 
  while(!i.eof()) 
  {
    i.read((char*)&st,sizeof(st));
    k.write((char*)&st,sizeof(st));
    cout<<"\n After copying of the file:";
    cout<<st; 
  }
 
  getch(); 
}