ifstream: Eine zeile und kein Bock mehr! Wlchen fehler hab ich gemacht?

Hi!

Ich schreibe mal öfters kleine Programme für Freunde, und nun habe
ich ein Programm, das Textdateien kopiert und gleichzeitig
den Inhalt anzeigt. Allerdings tut das Programm nach einer
Zeile nicht mehr, allerdings bleibt es aktiv:

Code:
while(!in.eof())
{
in.get(temp,20);
cout << temp;
out << temp;
}
liegt da der Fehler? Oder braucht ihr den kompletten Code ?

Danke im vorraus
 
Dein Fehler liegt bei der in.get() Methode.

C Code:

Code:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int main(int argc, char *argv[])
{
    char c;
    FILE *in_file;
    FILE *out_file;
    
    in_file = fopen("Servus.txt", "r");
    
    if(!in_file)
    {
        fprintf(stderr, "Datei konnte nicht geoffnet werden");
        return -1;
    }
    
    out_file = fopen("Kopie.txt", "w");
    
    if(!out_file)
    {
        fprintf(stderr, "Datei konnte nicht geoffnet werden");
        return -1;
    }
    
    while(( c = (char)fgetc(in_file)) != EOF)
    {
        fprintf(stdout, "%c", c);
        fprintf(out_file, "%c", c);
    }
    
    getch();
}

C++ Code:

Code:
#include <cstdlib>
#include <iostream>
#include <fstream>

using namespace std;

int main(int argc, char *argv[])
{
    fstream in;
    in.open("Servus.txt", ios::in);
    
    if(!in)
    {
        cerr << "Datei konnte nicht geoeffnet werden";
        return -1;
    }
    
    fstream out;
    out.open("Kopie.txt", ios::out);
    
    if(!out)
    {
        cerr << "Datei konnte nicht geoffnet werden";
        return -1;
    }
    
    char c;
    while(in.get(c))
    {
        cout << c;
        out.put(c);
    }
        
    in.close();
    out.close();
    
    getchar();
}
 
18 G:\Dev-Cpp\morecut\morecut.cpp no matching function for call to `std::basic_ifstream<char, std::char_traits<char> >::get(char[20])'
kommt bei
Code:
while(in.get(temp))
Dein Code Klappt!

Thx!(ich hatte meinen Code nur etwas geändert)
 
Zurück
Oben