Original geschrieben von Zeeke
Hi,
ich habe von Xcode (noch) keine Ahnung, aber habe afair mal irgendwo aufgeschnappt, dass man damit keine richtigen Konsolenanwendungen machen kann..
...
Ciao
Das ist definitiv falsch.
Man muss nur beim Anlegen des Projektes ein "Tool" anlegen:
- Standard Tool -> This project builds a command-line tool written in C.
- Foundation Tool -> This project builds a command-line tool that links against the Foundation library.
- Core Service Tool -> This project builds a command-line tool that links against the Core Services library.
- Core Foundation Tool -> This project builds a command-line tool that links against the Core Foundation library.
- C++ Tool -> This project builds a command-line tool that links against the stdc++ library.
sind die möglichen Optionen. Die Erklärungen sind direkt aus XCode kopiert.
@pappe.
für einfache C und c++ Programme verwende ich das Terminal.
wie kompiliert wird, wurde schon erklärt.
Ich selbst verwende dazu Makefiles, aber für einfache Programme, die nur aus einer Datei bestehen ist das gar nicht erforderlich.
Im Terminal bedeutet ^C "Stoppe das laufende Programm sofort" (entspricht "Sofort Beenden" im Finder)
^D heisst "exit"; damit kann man ein laufendes Programm beenden, aber auch eine Shellsitzung, also sich abmelden.
"EndOfFile" ist in beiden Fällen eigentlich nicht ganz richtig.
Mit EOF kann man das Ende einer Datei markieren, wenn die Datei über die Standardeingabe eingelesen wird.
Ist zB beim Versenden einer eMail über telnet wichtig, oder bei solchen Befehlen, die aus Dateien oder aus der Standardeingaben lesen können (wie ZB "cat")
i. d. R. kann man selber definieren, welches Zeichen als EOF gelesen wird; bei "mail" ist das zum Beispiel ein "." auf einer eigenen Zeile
In deinem Programm kommt das auf das selbe hinaus, ist aber genau genommen nicht korrekt.
Ansonsten hat banz aber recht, wenn er sagt, dass ^C in XCode nicht funktioniert.
Was für ein Projekt hast Du denn in XCode angelegt ?
Ruf es doch mal im Termial auf (einfach die Datei auf ein Terminalfenster ziehen und enter)