Input/Output
-
genau das ist es !!!
nur es klappt iwie nicht, ich hab die vo Folie studiert und 1:1 übernommen, klappt nicht

-
so folgendes:
ich habe eine Input.txt erzeugt und 4 vierstellige zahlen eingetippt; diese datei in den Ordner gelegt wo meine main.cpp ist.
main.cpp schaut so aus:
#include <iostream> #include <fstream> #include <cstdlib> //für atoi using namespace std; int main () { ifstream iFile; iFile.open("input.txt"); string line= ""; //string ist wie character nur liest es nicht ein character sondern mehrere int zahl=0; int t; int h; int z; int e; if (iFile.is_open()) { while(!iFile.eof()) { //solange nicht end of file geht es durch getline(iFile, line, '\n'); //liest die Datei, speichert in line überschreibt es bei zeilenumbruch zahl = atoi(line.c_str()); //wird in integer umgewandelt und in der variable zahl eingespeichert t= zahl/1000; h= zahl/100%10; z= zahl/10%10; e= zahl%10; switch (t) { case 1: cout<< "eins-";break; case 2: cout<< "zwei-";break; case 3: cout<< "drei-";break; case 4: cout<< "vier-";break; case 5: cout<< "fünf-";break; case 6: cout<< "sechs-";break; case 7: cout<< "sieben-";break; case 8: cout<< "acht-";break; case 9: cout<< "neun-";break; case 0: cout<< "null-";break; } switch (h) { case 1: cout<< "eins-";break; case 2: cout<< "zwei-";break; case 3: cout<< "drei-";break; case 4: cout<< "vier-";break; case 5: cout<< "fünf-";break; case 6: cout<< "sechs-";break; case 7: cout<< "sieben-";break; case 8: cout<< "acht-";break; case 9: cout<< "neun-";break; case 0: cout<< "null-";break; } switch (z) { case 1: cout<< "eins-";break; case 2: cout<< "zwei-";break; case 3: cout<< "drei-";break; case 4: cout<< "vier-";break; case 5: cout<< "fünf-";break; case 6: cout<< "sechs-";break; case 7: cout<< "sieben-";break; case 8: cout<< "acht-";break; case 9: cout<< "neun-";break; case 0: cout<< "null-";break; } switch (e) { case 1: cout<< "eins";break; case 2: cout<< "zwei";break; case 3: cout<< "drei";break; case 4: cout<< "vier";break; case 5: cout<< "fünf";break; case 6: cout<< "sechs";break; case 7: cout<< "sieben";break; case 8: cout<< "acht";break; case 9: cout<< "neun";break; case 0: cout<< "null";break; } } } else { cout<<"Konnte input.txt nicht öffnen \n"; } iFile.close(); return 0; }nach dem kompilieren mit MAC kommt: konnte input nicht öffnen ???????
ich mach doch alles richtig, oder ist der mac bisschen gemein hier ?
-
diese datei in den Ordner gelegt wo meine main.cpp ist.
Schön, dass du den Thread so aufmerksam liest.

Ich habe dir doch schon erklärt, dass dein Programm die Datei wohl gerade deswegen nicht findet, warum das so ist und was du dagegen tun kannst.
-
tut mir leid ich meinte ich habe es NICHT in den selben Ordner getan
... trotzdem, wenn ich bei xcode auf run drücke geschieht nichts 
-
@neymar
Ist dir das Konzept des "aktuellen Verzeichnis" aka. "Arbeitsverzeichnis" bekannt?
-
ich weiß nicht genau, was du meinst ! aber erklär bitte !
-
Na, sicher nicht.
Das kannst du dir ergoogeln.
"current directory" wenn du des Englischen mächtig bist.
-
[quote="hustbaer"]Na, sicher nicht.
Das kannst du dir ergoogeln.
"current directory" wenn du des Englischen mächtig bist.[/quote]ist fast so hilfreich wie das erklären ^^, ich les das mal durch und dann schau ma weiter, danke
-
neymar schrieb:
ist fast so hilfreich wie das erklären ^^
ISt sogar noch viel hilfreicher - zeigt dir nämlich, wo du Antworten auf viele deiner Fragen selbständig finden kannst (nämlich bei Google). Dann brauchst du nicht bei jeder kleinen Frage warten bis du hier ne Antwort bekommst (und wir brauchen nicht loszutippen bei Fragen, die in kürzester Zeit im Netz zu finden sind).
-
meine eigentliche frage war es wie es auf dem mac geht !!!
mein programm funktioniert auf ubuntu mit g++ prima nur mit xcode nicht darum war die frage an mac user gerichtet !!ich habe es mitlerweile geschafft. man muss im xcode ein neues file öffnen und dann empty file öffnen, es als reinen txt abspeichern und full path angeben: sprich nicht iFIle("Input.txt") sondern iFile(home/blablabla/)
er kann jetzt vom input auslesen aber das erstellen eines outputs geht nicht

google spuckt auch nicht viel aus, alle tuts und videos auf youtube habe ich angeschaut und am programm kanns nicht liegen das funktioniert ja bei ubuntu
hmmm

-
"funktioniert nicht", ist eine herrlich elaborierte Fehlerbeschreibung, die allen hilft, dein Problem zu lösen.
Nicht.
-
funktioniert nicht: beim Xcode im Mac erstellt er keine output.txt Datei für den Input.txt mit dem inhalt (zB 1234, oder 3234 etc)
Ich habe bis heute keine Lösung, nicht mal MAc User auf der Uni können mir helfen, die verwenden alle ubuntu zum programmieren, auf ubuntu kann ich es aber warum nicht mit dem Mac ...

klumpat

-
Bau Prüfungen im Code ein oder benutz einen Debugger um herauszufinden, was schief läuft. So wie der Thread verlaufen ist, bist du vermutlich immer noch im falschen Verzeichnis, vielleicht hast du aber auch keine Schreibrechte, wer weiß?