C lernen, Anfangs klappt schon nichts ;)

Alles klar danke dir, aber ich frage mich jetzt schon, ob das ganze Buch nur aus Consolenanwendunen besteht, ich mein ich würd ja gern das ganze hinter ner Programmoberfläche laufen lassen, es gibt ja kein Programm dass ma in ner Console ausführt oder ... Was bringts mir dann wenn ich das jetz alles in ner console programmiere?
 
doch klar gibts die ^^. Wenn man nix komplexes entwickeln will und sich net mit Oberflächen rumschlagen will bzw. wenn das einfach net nötig ist für das was man entwickelt dann nimmt man klar ne Konsolenanwendung.
Naja wenn du frisch mim Programmieren anfängst, dann solltest du erstma das Grundlegende kennen lernen und das ist einfach in ner Konsolenanwendung sehr viel einfacher wie wenn du direkt mit ner Oberflächenprogrammierung anfangen würdest. Da steckt um einiges mehr dahinter und wie gesagt du brauchst erstma das Grundverständnis / wissen
 
Nun ja, du musst eben wissen was du mit deinen Programmen machen willst.

C ist als Einstieg in die prozedurale Programmierung schon ganz gut, wird aber eher nicht dazu verwendet um Anwendungen mit einer GUI zu schreiben.

Falls du auf Anendungen mit einer GUI abziehlst, würde ich dir Vorschlagen C++ mit QT oder auch Java zu verwenden, wobei Java die einfachere Variante ist. Diese beiden sind aber dann Obejktorientierte Programmiersprachen.

Gruß Zeus
 
Naja bei QT kommt er ohne Vorkenntnisse und Grundwissen meiner Meinung nach nicht arg weit. Vllt schaust dir auch ma die .Net Umbgebung an. C# oder VB.Net. Is zum Einsteigen in die Oberflächenprogrammierung vllt net ganz so schwer. Sind zwar höhere Sprachen als C/C++ aber wie gesagt zum Einsteigen daher vllt au einfacher.
 
Zuletzt bearbeitet:
hazzilein schrieb:
Es öffnet sich zwar das schwarze Fenster und ich kann auch erkennen dass das richitge drinsteht, allerdings schließt es sich sofort wieder, man kann kaum erkennen was drinsteht so schnell geht das.

Weiß jemand woran das liegt?

Das liegt daran, dass du keinen STOP Befehl eingefügt hast. Der läuft somit den Code ab und schließt sich von selbst.

Was du machen müsstest ist

Code:
system("pause");
am Ende des Codes einfügen, somit stopt die Anwendung nach Ablauf des gesamten Codes.

Ich meine es geht auch mit
Code:
getch();
am Ende. Somit bleibt das Fenster solange öffen bis du eine Taste drückst.
 
sorry dachte es wäre C++

:D

---------------------------------------------------------
 
Gibts ja nicht, jetz gehts wieder nimmer. Bei folgendem Programm... vorher gings mit dem getchar und return ... Ich kann zwar die erste Zahl eingeben und die zweite, aber sobald ich bei der zweiten Zahl, also bei Y enter drücke startet er die berechnung aber schließt gleich danach ...

/* bsp.c */
#include <stdio.h>
int main(void){
int x,y;
printf("\n\t1 . Rechenprogramm\n");
printf("\nBitte x eingeben :");
scanf("%i" ,&x);
printf("\nBitte y eingeben :");
scanf("%i" ,&y);
printf("\n %i + %i ist %i" ,x,y,x+y);
printf("\n %i / %i ist %i" ,x,y,x/y);
printf("\n %i %% %i ist %i" ,x,y,x%y);
getchar();
return 0;

}
 
das geht gar nicht duz schreibst folgendes

int main (void) <- void bedeutet liefere mir nix zurück

und im Programm drinne sagst du

return 0;

DAS WIDERSPRICHT SICH :D
 
Lösung? :D was soll ich wegmachen

Also wenn ich beide wegmach gehtsnicht, wenn ich nur void wegmache gehts ned und wenn ich nur return wegmach gehts auchne ;)

Bei den anderen is aber die console auch offen geblieben mit beiden befehlen
 
gibs mal so ein


int main() {

int x,y;

printf("\n\t1 . Rechenprogramm\n");
printf("\nBitte x eingeben :");

scanf("%i" ,&x);

printf("\nBitte y eingeben :");
scanf("%i" ,&y);

printf("\n %i + %i ist %i" ,x,y,x+y);
printf("\n %i / %i ist %i" ,x,y,x/y);
printf("\n %i %% %i ist %i" ,x,y,x%y);

getchar();

return false;
}
 
@Istanblueee:
nein nein du verwechselst da was int main(void) = int <-- Rückgabe vom Hauptprogramm (Main) main <-- Die Haptfunktion (void) <-- sie BEKOMMT nichts übergeben ;) hat mit dem return 0 nichts zu tun. Das bedeutet nur dass er da aus der Main raus geht und ne 0 (int) zurück gibt ;) (Sozusagen ein "Statuscode", dass das Programm erfolgreich abgeschlossen wurde, bei Fehlern geht man meistens mit einem -1 raus)

@hazzilein:
mach ma vor dem getchar(); ein fflush(stdin) bzw direkt nach den scanf's...das Problem dabei ist, dass die Tastatureingabe in einem Puffer zwischengespeichert und erst nach Eingabe von <enter> an getchar übergeben wird.
 
Zuletzt bearbeitet:
Nur mal so nebenbei... du hast den Compiler auf Debug stehen und nicht auf Release, oder? Dann kannst du es nämlich so machen, wie es im Buch steht, ohne Pause und getchar etc.
 
DaBigTank schrieb:
wenn du int main() angibst dann musst du in deiner Main auch n return angeben...also einfach so

Oh man, immer dieses Halbwissen.
Seit C99 mußt du kein return angeben.
Ist kein's angegeben, ist es automatisch 0.
 
Naja bei QT kommt er ohne Vorkenntnisse und Grundwissen meiner Meinung nach nicht arg weit.

Das kann man schon sagen, aber ich würde dir dennoch dazu raten anstatt auf .Net zurückzugreifen. Du hast einfach den großen Vorteil, plattformübergreifend zu programmieren, ohne den Sourcecode zu ändern. Zudem bietet es einfach schöne Dinge, die dir den Programmieralltag angenehmer machen, ich benutzte es selbst.
Aber du solltest dir erst einmal die Basics von C++ aneignen.

@oldsqldma: Du sprichst da eine Wahrheit aus...

Gruß,

badday
 
Könnte man nicht einfach mal eine FAQ dafür machen? Immer wieder die selbe Frage zu lesen mit immer wieder anderen Antworten. Das ist wirklich nervig...

@Backslash: Sorry dein "Klick" scheint nicht zu funktionieren, zumindest bei mir nicht...
 
@oldsqldma:
jaja immer diese unheimlich HILFREICHEN Kommentare...unglaublich. Wem hast du damit geholfen?!
Aber gut du hast recht...ich fall auf die Knie vor dir und bitte um vergebunug. Es tut mir leid großer Meister ich habe in dem Moment nicht nachgedacht weil ich schnell HELFEN wollte...tut mir echt leid!....
 
Zurück
Oben