Hallo zusammen
Bin mal wieder am basteln. Leider finde ich den Fehler nicht so ganz. Ich bin aber guter Dinge, dass ihr Profis ihn sicher sofort findet
OK, hier wäre der Code:
Kurz gesagt, soll das Programm eine zu bestimmende Anzahl Strings in eine Textdatei speichern.
Dies tut es auch fast, nur wenn ich z.B. 3 Strings einlese, so erscheinen nur jeweils die ersten Buchstaben der ersten beiden Strings und der letzte wird komplett übernommen.
Was muss ich ändern, damit es auch die anderen Strings komplett in die Datei schreibt?
PS. Eine zweite Frage hätte ich auch noch. Wie bringe ich es hin, dass ich Leerzeichen in Strings mit abspeichern kann? Also sowie:
cin str >> Hallo Computerbaseforum;
Hab was mit "getline (cin,str);" gefunden, nur funktioniert es nicht so ganz... hab da wohl was falsch gemacht?
Bin mal wieder am basteln. Leider finde ich den Fehler nicht so ganz. Ich bin aber guter Dinge, dass ihr Profis ihn sicher sofort findet

OK, hier wäre der Code:
Code:
#include <iostream>
#include <stdlib.h>
#define MAX 255
using namespace std;
void write(char &eingeben)
{
FILE *fp = fopen("test.txt", "w"); // öffnen mit schreibrecht
if (fp == NULL) // falls Datei nicht korrekt gelesen
{
cout << "Problem beim Erstellen des Files" << endl;
}
fputs(&eingeben, fp); // schreibt den String in eine Datei
fputc('\n', fp); // Zeilenumbruch erzeugen
fclose(fp); // schliesst das File wieder
}
int main(int argc, char *argv[])
{
char eingeben[MAX]; // Variablendefinition String
int anz = 0;
cout << "wieviele Strings einlesen? > ";
cin >> anz; // Angabe anzahl zu erstellenden Strings
for(int i = 0; i < anz; i++)
{
cout << "Bitte Text eingeben ";
cin >> &eingeben[i]; // Eingabe des Strings
write(*eingeben); // Aufruf der Funktion zum in Datei schreiben
}
system("PAUSE");
return 0;
}
Kurz gesagt, soll das Programm eine zu bestimmende Anzahl Strings in eine Textdatei speichern.
Dies tut es auch fast, nur wenn ich z.B. 3 Strings einlese, so erscheinen nur jeweils die ersten Buchstaben der ersten beiden Strings und der letzte wird komplett übernommen.
Was muss ich ändern, damit es auch die anderen Strings komplett in die Datei schreibt?
PS. Eine zweite Frage hätte ich auch noch. Wie bringe ich es hin, dass ich Leerzeichen in Strings mit abspeichern kann? Also sowie:
cin str >> Hallo Computerbaseforum;
Hab was mit "getline (cin,str);" gefunden, nur funktioniert es nicht so ganz... hab da wohl was falsch gemacht?