c:faq - Vorschläge
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
c:faq - Vorschläge
Hallo!
In diesem Thread könnt ihr Vorschläge/Bitten zu Fragen posten, die in die FAQ kommen sollen. Nachdem ihr einen Vorschlag gepostet habt, stellt euch bitte der Diskussion: beantwortet Fragen, verbessert Fehler und verbessert die Formatierung.
Wenn die Frage dann von der Allgemeinheit angenommen wird (wird von den Moderatoren entschieden), kommt die Frage dann ins FAQ.
In diesem Thread könnt ihr Vorschläge/Bitten zu Fragen posten, die in die FAQ kommen sollen. Nachdem ihr einen Vorschlag gepostet habt, stellt euch bitte der Diskussion: beantwortet Fragen, verbessert Fehler und verbessert die Formatierung.
Wenn die Frage dann von der Allgemeinheit angenommen wird (wird von den Moderatoren entschieden), kommt die Frage dann ins FAQ.
Haters gonna hate, potatoes gonna potate.
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Re: Vorschläge für die FAQ
Und hallo nochmals.
Hier gleich der Vorschlag für die erste Frage.
Ich dachte mir, dass viele Leute unter Windows zu programmieren beginnen werden und deshalb gleich als erstes diese Frage stellen werden.
Falls ihr irgendwelche Fehler findet (inhaltlich oder rechtschreibfehler), wenn ihr einen besseren Vorschlag für die Formatierung findet, oder wenn ihr denkt dass diese Frage anders behandelt werden müsste, dann Postet hier eure Bedenken.
Also dann, hier ist die Frage:
Hier gleich der Vorschlag für die erste Frage.
Ich dachte mir, dass viele Leute unter Windows zu programmieren beginnen werden und deshalb gleich als erstes diese Frage stellen werden.
Falls ihr irgendwelche Fehler findet (inhaltlich oder rechtschreibfehler), wenn ihr einen besseren Vorschlag für die Formatierung findet, oder wenn ihr denkt dass diese Frage anders behandelt werden müsste, dann Postet hier eure Bedenken.
Also dann, hier ist die Frage:
[edit]Rechtschreibfehler ausgebessert[/edit]Frage #1: Wieso blinkt mein Programm nur kurz auf und verschwindet dann sofort wieder?
Antwort: Weil es genau das tun soll.
Höchstwahrscheinlich habt ihr gerade mit dem Programmieren angefangen, verwendet Windows und irgendeine Entwicklungsumgebung, oder ihr habt einfach nur auf die .exe geklickt. (wenn nicht, dann läuft hier was falsch...) Und jetzt wundert ihr euch, wie ihr denn euer Programm zu gesicht bekommt!
Tja, ihr müsst wissen dass der Computer genau das Tut was ihr ihm sagt. Nicht mehr und nicht weniger. Wenn ihr sagt, drucke etwas auf den bildschirm, dann tut er das und dann ist er fertig.
Seht euch folgendes Programm an:Dieses Programm schreibt "Hello proggen.org!" auf den Bildschirm und beendet sich dann sofort wieder. Wieso sollte es denn auch warten, bis jemand sehen kann was da ausgedruckt wurde?Code: Alles auswählen
#include <iostream> int main() { std::cout<<"Hello proggen.org!\n"; return 0; }
Nun, das war jetzt wenig zufriedenstellend, ihr wollt doch eure Programme sehen, oder? Natürlich geht das. Ihr habt 2 möglichkeiten.
Möglichkeit a)
Started das Programm aus der Konsole! Die Konsole erreicht ihr unter einen der folgenden Wege:Jetzt habt ihr eine Eingabeaufforderung vor auch. Damit ihr euer Programm ausführen könnt, müsst ihr zuerst in das Verzeichnis wechseln wo die .exe liegt. Falls ihr eine Entwicklungsumgebung habt kann das ziemlich tief versteckt in irgendeinem Projektunterordner sein, die zum Beispiel "bin" "Debug" "Release" oder sonstwas heißen. Im zweifelsfall seht ihr in den Projekteinstellungen der Entwicklungsumgebung nach.
- Start -> Alle Programme/All Programs -> Zubehör/Accessories -> Eingabeaufforderung/Command Prompt
- Start -> Ausführen/Run -> "cmd" eingeben (ohne anführungsstriche) -> Ok klicken
- Super(Windows) Taste gedrückt halten und R drücken -> "cmd" eingeben (ohne anführungsstriche) -> Enter Drücken
In das verzeichnis wechseln könnt ihr mit dem Befehl "cd". Also wenn ihr z.B. euer Programm auf dem Desktop habt müsst ihr folgendes eingeben:. Die Anführungszeichen sind notwendig, wenn Leerzeichen im Pfad Enthalten sind, und "username" natürlich mit eurem benutzernamen ersetzen.Code: Alles auswählen
cd "C:\Dokumente und Einstellungen\username\Desktop"
Dann gebt ihr einfach den Namen eures Programms ein und schwupp, schon läuft es.
Möglichkeit b)
Ihr erstellt euch eine leere Datei im gleichen Verzeichnis wo die .exe liegt. Diese Datei nennt ihr "startprog.bat". (Nicht startprog.bat.txt! Es kann sein, dass Windows die Dateiendung vor euch versteckt. Dann müsst ihr Im Explorer- Menü unter
Extras/Tools -> Ordneroptionen/Folder Options -> Registerkarte Ansicht/View -> "Bekannte Dateierweiterungen Ausblenden"/"Hide Extensions for known filetypes" Abwählen.)
Dann öfnnet ihr diese Datei mit einem Texteditor, und schreibt dort 2 Zeilen rein:Wenn ihr jetzt auf diese .bat datei doppelklickt, dann wird euer Programm ausgeführt, und nach dem es beendet ist, wird gewartet bis ihr eine Taste drückt, und erst dann wird das Fenster geschlossen.Code: Alles auswählen
name_eures_programms.exe pause
So, am liebsten gewöhnt ihr euch gleich an die Kommandozeile. Die kann unter Windows zwar sehr wenig im Vergleich zur Linux Konsole, allerdings werdet ihr trotzdem höchstwahrscheinlich einen großen Teil eurer Programmierkarriere dort verbringen. Daran ist nichts Schlimmes: sehr viele Programmierer (auch sehr gute) verzichten gerne auf Entwicklungsumgebungen und verwenden mit Vergnügen die Kommandozeile.
Zuletzt geändert von fat-lobyte am Mo Jul 07, 2008 6:58 pm, insgesamt 1-mal geändert.
Haters gonna hate, potatoes gonna potate.
Re: Vorschläge für die FAQ
Sehr gut beschrieben.
Ich hätte da aber noch Punkt c:
Ich hätte da aber noch Punkt c:
Außerdem würde ich noch ein C-Beispiel dazu schreiben, sonst haben die einen oder anderen schnell ein großes Fragezeichen auf dem Kopf....
Möglichkeit c)
Ihr schreibt das Programm so, dass es nach der letzten Ausgabe stoppt und sich erst beendet, wenn eine beliebige Taste gedrückt wird.
Dazu sind folgende Anweisungen in C möglich:Man kann auch die Funktion getch() nehmen. Da sie aber nur unter Windows gültig ist, sollte man diese Funktion meiden.Code: Alles auswählen
# include<stdio.h> int main(){ printf("Hello World\n"); printf("Press any key to close the program!"); getchar(); return 0; }
In C++ sieht es folgendermaßen aus:Code: Alles auswählen
# include<iostream> int main(){ std::cout<<"Hello World"<<std::endl; std::cout<<"Press any key to close the program"; cin.get(); return 0; }
Ich habe noch die Rechtschreibfehler markiert.fat-lobyte hat geschrieben:So, am liebsten gewöhnt ihr euch gleich an die Kommandozeile. Die kann unter Windows zwar sehr wenig im vergleich zur Linux Konsole, allerdings werdet ihr trotzdem höchstwahrscheinlich einen großen Teil eurer Programmierkarriere dort verbringen. Daran ist nichts schlimmes: sehr viele Programmierer (auch sehr gute) verzichten gerne auf entwicklungsumgebungen und verwenden mit vergnügen die Kommandozeile.
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Re: Vorschläge für die FAQ
Diese Möglichkeit habe ich eigentlich nicht "Vergessen", ich habe sie bewusst ausgelassen. getch() funktioniert nur für Windows, und zwar mithilfe eines DOS headers, den eigentlich kein Programmierer mehr zu sehen bekommen sollte (conio.h). getch() ist also vollkommen inakzeptabel für mich.Metamorph hat geschrieben: Ich hätte da aber noch Punkt c:
getchar() ist zwar schon Portabel, verlangt aber 1. die veränderung von bereits vorhandenem Code, und zwar nur weil man das Programm nicht aus der Konsole gestartet hat, wie man es eigentlich sollte.
2. ergeben sich dadurch gravierende schwierigkeiten im zusammenhang mit dem stdin- puffer.
Betrachte folgenden Code:
Code: Alles auswählen
#include <stdio.h>
int main()
{
int d;
printf("Bitte geben sie eine Zahl ein: ");
scanf("%d", &d);
printf("\nDie zahl war %d.\n", d);
printf("Druecken sie enter um zu beenden: ");
getchar();
return 0;
}
Wie meinst du das? Also als codebeispiel hab ich schon das "Hello proggen.org", und ansonsten war da nicht viel C dabei.Metamorph hat geschrieben:Außerdem würde ich noch ein C-Beispiel dazu schreiben, sonst haben die einen oder anderen schnell ein großes Fragezeichen auf dem Kopf.
Danke, werde ich ausbessern.Metamorph hat geschrieben:Ich habe noch die Rechtschreibfehler markiert.
Haters gonna hate, potatoes gonna potate.
- Xin
- nur zu Besuch hier
- Beiträge: 8861
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Vorschläge für die FAQ
Ein Diskussionsthread zur FAQ gefällt mir sehr gut, doch die FAQ selbst würde ich eher im Wiki anlegen.fat-lobyte hat geschrieben:Hallo!
In diesem Thread könnt ihr Vorschläge/Bitten zu Fragen posten, die in die FAQ kommen sollen. Nachdem ihr einen Vorschlag gepostet habt, stellt euch bitte der Diskussion: beantwortet Fragen, verbessert Fehler und verbessert die Formatierung.
Wenn die Frage dann von der Allgemeinheit angenommen wird (wird von den Moderatoren entschieden), kommt die Frage dann ins FAQ.
Beiträge kann man auch editieren, doch ließe sich hier direkt aus dem Wiki referenzieren und die FAQ wäre auch da zu finden, wo die Fragen auftauchen.
Ähnlich wie der Link zum Wiki könnte man über das C/C++ Forum einen direkten Link zur FAQ setzen. Den zu übersehen wird dann schon sehr schwierig (wenngleich wir alle wissen, dass es weiterhin Spezialisten geben wird, die die FAQ auch hier übersehen )
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Re: Vorschläge für die FAQ
Gute Idee, dann lösch und verlink mal bitteXin hat geschrieben:Ein Diskussionsthread zur FAQ gefällt mir sehr gut, doch die FAQ selbst würde ich eher im Wiki anlegen.
Beiträge kann man auch editieren, doch ließe sich hier direkt aus dem Wiki referenzieren und die FAQ wäre auch da zu finden, wo die Fragen auftauchen.
Ähnlich wie der Link zum Wiki könnte man über das C/C++ Forum einen direkten Link zur FAQ setzen. Den zu übersehen wird dann schon sehr schwierig (wenngleich wir alle wissen, dass es weiterhin Spezialisten geben wird, die die FAQ auch hier übersehen )
Ich hab nämlich keine Moderatorenrechte.
Haters gonna hate, potatoes gonna potate.
- Xin
- nur zu Besuch hier
- Beiträge: 8861
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Vorschläge für die FAQ
Ich denke, niemand hat ein Problem damit, das zu ändern, also guck doch mal, ob ich das mit der Forumkonfig soweit hinbekommen habe.fat-lobyte hat geschrieben:Gute Idee, dann lösch und verlink mal bitte
Ich hab nämlich keine Moderatorenrechte.
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Re: Vorschläge für die FAQ
Jo, hat funktioniert Danke. Wie das mit dem Link geht hab ich aber noch nicht so ganz heraußen...Xin hat geschrieben:Ich denke, niemand hat ein Problem damit, das zu ändern, also guck doch mal, ob ich das mit der Forumkonfig soweit hinbekommen habe.
Haters gonna hate, potatoes gonna potate.
- Xin
- nur zu Besuch hier
- Beiträge: 8861
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Vorschläge für die FAQ
Stimmt... dafür bedarf es dieses knallroten Namens.... irgendwo kann man auch diese grellen Farben ändern... **such**fat-lobyte hat geschrieben:Jo, hat funktioniert Danke. Wie das mit dem Link geht hab ich aber noch nicht so ganz heraußen...Xin hat geschrieben:Ich denke, niemand hat ein Problem damit, das zu ändern, also guck doch mal, ob ich das mit der Forumkonfig soweit hinbekommen habe.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
- fat-lobyte
- Beiträge: 1398
- Registriert: Sa Jul 05, 2008 12:23 pm
- Wohnort: ::1
- Kontaktdaten:
Re: Vorschläge für die FAQ
Und schon wurde er blau...Xin hat geschrieben:Stimmt... dafür bedarf es dieses knallroten Namens.... irgendwo kann man auch diese grellen Farben ändern... **such**
Haters gonna hate, potatoes gonna potate.