Persönliches kleines Problem!
-
Ok, sehr vielen dank, also wenn ich mit g++ Kompiliere, einfach bei der ausführbaren Datei keine Endung hinzufügen. Danke nochmal! Ich hoffe, dass mir das angegebene Buch bei Amazone helfen wird.
Kann mir sonst noch jemand einen kleinen Tipp geben?
Danke schonmal!
Mfg André
-
Mega_Noob schrieb:
Kann mir sonst noch jemand einen kleinen Tipp geben?
- Besseren Thread Titel wählen
- cpp-Tags nutzen
- Debugger lernen zu nutzen
- Bessere Problem Beschreibung liefen
...Also wenn du C++ lernen willst, dann hat das in erster Linie nichts mit dem System zu tun, auf dem du programmierst und ausführst. Eine gute, moderne IDE macht dir das alles und du musst dich da gar nicht drum kümmern. Schön einfach die Source Dateien und Header hinzufügen und schon passiert das richtige Linken von alleine.
Das ganze sieht anderst aus, sobald du dich mit höheren Anwendungen beschäftigst. Also zum Beispiel GUI Anwendungen schreiben willst, dann musst du dich näher mit System Eigenschaften rumschlagen, oder gleich ein portables Framework nutzen. (Kommt aber erst viel später).
-
Ohh, danke! Also, wenn ich mich erstmal weiter mit C++ beschäftige und das nicht nur ein bisscehn, sondern es mit engargemant mache, dann komme ich doch gut voran? Das bedeutet auch, wenn ich auf meinem System, Linux, Programme schreibe, dann muss ich doch nur die gewöhnlichen Grundlagen von C++ kennen und wenn ich das ganze noch ein wenig erweiter, dann wird das alles doch gar nicht so schwer, größere Programme zu schreiben, richtig?
Also ich danke euch wirklich sehr, ihr habt mir damit gut klargemacht, dass ich mit meinen jetzigen kenntnissen, nicht weiter arbeiten kann!
Ich habe da noch eine kleine Frage: Wie lange hat es so im Durchschnitt bei euch gedauert, bis Ihr C++ Prgrammierung richtig drauf hattet? Ich weiß, dass das ganze nicht 10 Tage dauert, aber ich habe wirklich vor ein guter Programmierer zu werden. Danke!
Mfg André
-
Also ich programmiere seit einem guten Jahr in C++ (beruflich). Ich hatte auch schon Erfahrung in anderen Sprachen (QBasic, VB, Clipper, JavaScript, PHP). In den ersten 2-3 Monaten konnte ich nur kleine Sachen erledigen (hauptsächlich IC-Programmierung in C), mittlerweile komme ich aber ganz gut klar und bin auch an größeren Projekten dran. da man sich im beruflichen Umfeld logischerweise spezialisiert und unter Zeitdruck arbeitet, beherrsche ich aber selbstverständlich nur einen kleine Teilmenge von C/C++/WinAPI/MFC. Ich meine, mal gelesen zu haben, dass allein die WinAPI aus über 10000 Funktionen besteht. Da kennt sich wohl kaum jemand komplett aus. Muss man auch nicht. Jedenfalls hat mich kein Projekt der jüngeren Zeit vor große Schwierigkeiten gestellt.
Glaub mir, du wirst nach anfänglichen Schwierigkeiten schnell Erfolge feiern. Hast du erstmal die Basics auf der Konsole gelernt, kannst du dich an die Windows-Programmierung wagen (sofern du das willst). Wichtig ist, dass man nicht einfach drauf los programmiert und sich zu große Ziele setzt, sondern sich Stück für Stück voran arbeitet. Dabei sollte man ein gutes Buch oder Tutorials benutzen.
Überleg dir z.B. ein kleines Spiel, dass du gerne schreiben würdest. Mir ist das immer der liebste Weg, um eine Sprache zu lernen. In VB war mein erstes (privates) Projekt damals ein Bomberman-Klon, der zwar simpel, aber gar nicht sooo schlecht war (nur 2-Player, keine KI).
-
Danke! Ja ich habe vor, sobald der nächste Monat angefanngen hat, mir das Buch von Amazone zu kaufen. Womit ich Probleme habe und wovor ich auch Angst habe ist, dass ich mir immer die ganzen Sachen, die man liest und die man da lernt wieder vergesse. Z.B. habe ich ja auch das mit den Strings gelernt, aber ich habe es nicht benutzt, weil ich da nicht dran gedacht habe, weil ich es vergessen habe.
Ausserdem habe ich noch Probleme damit Bücher zu lesen, weil ich 1. nicht gerne lese und 2. dass ich nicht oft Zeit habe, denn habe ne Freundin(das bedeutet am wochende darf ich mich nicht mit dem Thema Computer befassen) dann muss ich viel im Haushalt machen und Spiele auch ganz gerne mal zur belohnung.
@_matze:
Du sagst, dass du das beruflich machst, mein naja, kleiner Traum ist es auch später im Thema C++ zu arbeiten. Darf ich denn auch fragen, als was ich mich da und wo bewerben müsste, ich habe davon nämlich noch nicht viel Ahnung, weißt du...Ich bin erst 15, dass ist mein Problem, ich kann nicht viel und es wird langsam Zeit, da ich nun schon in der 10. Klasse bin, einen Berufsweg in der Richtung zu wählen.Ich arbeite Grundsätzlich nur mit Linux, da nutze ich die IDE Eclipse, komme aber noch nicht ganz richtig mit klar. Was mich immernoch sehr stutzig macht ist, dass wie JustAnotherNoob sagt, dass Linux anwendugen keine Endung haben, stimmt bei mir komischer weise nicht. Ich kann meine Anwendug nicht ausführen obwohl sie keine Endung hat, im Eclipse geht sie, aber wenn ich direkt drauf klicke, geschieht nichts, woran kann das liegen?!
Ich danke euch erstmal alle, dass ihr soviel verständniss für mich habt. Danke!
Mfg André
-
Mega_Noob schrieb:
Womit ich Probleme habe und wovor ich auch Angst habe ist, dass ich mir immer die ganzen Sachen, die man liest und die man da lernt wieder vergesse.
Da hilft regelmäßige Anwendung! Du darfst natürlich nicht einfach nur was lesen, ohne es anzuwenden. Problematisch wird es sicher auch, wenn du dich nur alle paar Monate mal mit dem Thema befasst. Da du ja noch in der Schule bist und somit relativ viel Freizeit hast, sollte es (bei bestehendem Interesse) kein Problem sein, sich alle paar Tage mal für 2, 3 Stunden vor den Rechner zu setzen und zu programmieren. Wie gesagt, ein Ziel vor den Augen zu haben, ist hilfreich. Wenn du anfängst, ein kleines Spielchen zu schreiben, und irgendwann steht dann die grundlegende Spielmechanik, dann kommt die Motivation von ganz alleine ("Hurra, mein Game funzt!!"). Dann wirst du ganz versessen darauf sein, das Teil zur Perfektion zu treiben.
Mega_Noob schrieb:
Ausserdem habe ich noch Probleme damit Bücher zu lesen, weil ich 1. nicht gerne lese und 2. dass ich nicht oft Zeit habe, denn habe ne Freundin(das bedeutet am wochende darf ich mich nicht mit dem Thema Computer befassen) dann muss ich viel im Haushalt machen und Spiele auch ganz gerne mal zur belohnung.
Das ist schade. Ich lese für mein Leben gern (vor allem Romane)! Vielleicht kommt das bei dir noch. Du bist wohl noch geschädigt durch miese Schul-Lektüre. Eine Freundin habe ich auch und am Wochenende ist bei mir auch nix mit Programmieren. Ein berufliches Umfeld hilft da. Außerdem: du bist in der Schule. Du hast jeden Tag einen halben Tag Urlaub!

Mega_Noob schrieb:
Darf ich denn auch fragen, als was ich mich da und wo bewerben müsste?
Das wäre dann der Fachinformatiker mit Schwerpunkt Anwendungsentwicklung. Ich selbst bin eigentlich gelernter Informatikkaufmann, hab aber in der Ausbildung fast ausschließlich programmiert (und von dem kaufmännischen Kram seit der Prüfung keinen Plan mehr
). Wo du dich bewerben musst, kann dir natürlich keiner sagen. Sieh dich in deinem Umfeld um. Irgendwo gibt es immer passende Firmen. Zur Not hilft das Arbeitsamt. Aber mach erstmal die Schule zuende. Ein Abi ist sicher hilfreich und öffnet dir ein paar Türen mehr (auch, wenn ich meins abgebrochen habe).
-
Ohh man, Danke!
Ja also in der Woche kann ich mich schonmal 2-3 Stunden an den rechner setzen, wenich erlich bin, bin ich den ganzen Tag vorm Rechner, aber ich Spiele auch liebendgerne und dann kommt halt auch mal das Bedürfniss zu zokken, aber das kann ich ja ändern, denn ich will wirklich später richtig gut programmieren!_matze schrieb:
Das wäre dann der Fachinformatiker mit Schwerpunkt Anwendungsentwicklung.
Ich habe mich bis jetz bei meinem Praktikum in der 10. immer als Fachinformatiker Systemintegration beworben und auch das Bcuh was ich "lese"(der abbschnitt Linux) ist das Ausbildugsbegleitbuch für Systemintegration, deswegen werde ich mir das Video von Helge Maus nochmal reinziehen und mir das Buch von Amazone kaufen.
Ich habe auch noch nie gerne gelesen, ich habe es mal vor ein paar jahren versucht, aber hatte da auch keine Freude dran.
Zusätzlich bin ich euch allen und vorallem dir _matze sehr dankbar, dass ihr/du so viel gedult mit mir habt und mir so engariet helft.Wenn ich später nochmehr Probleme habe, dann melde ich mich hier nochmal im Forum.
Danke!!!
Mfg André
-
Mega_Noob schrieb:
aber ich Spiele auch liebendgerne und dann kommt halt auch mal das Bedürfniss zu zokken, aber das kann ich ja ändern,
Bloß nicht! Gib nicht das Zocken für's Programmieren auf! Ich zocke auch gerne und so oft ich kann. Beides schließt sich nicht aus.

-
Nene... das nicht, aber ein wenig verringern^^. Ich habe da mal einen Quellcode von einem Tic-Tac_toe spiel von einem ICQ Freund besorgt:/* Ein einfaches Tic-Tac-Toe-Spiel. */ #include <stdio.h> #include <stdlib.h> char matrix[3][3]; /* Die Tic-Tac-Toe-Matrix */ char check(void); void init_matrix(void); void get_player_move(void); void get_computer_move(void); void disp_matrix(void); int main(void) { char done; printf("Dies ist das Spiel Tic-Tac-Toe.\n"); printf("Sie spielen gegen den Computer.\n"); done = ' '; init_matrix(); do{ disp_matrix(); get_player_move(); done = check(); /* Gewinner? */ if(done!= ' ') break; /* Gewinner!*/ get_computer_move(); done = check(); /* Gewinner? */ } while(done== ' '); if(done=='X') printf("Sie haben gewonnen!\n"); else printf("Ich habe gewonnen!!!!\n"); disp_matrix(); /* zeige die letzten Positionen an */ return 0; } /* Initialisiere die Matrix. */ void init_matrix(void) { int i, j; for(i=0; i<3; i++) for(j=0; j<3; j++) matrix[i][j] = ' '; } /* Beschaffe den Zug eines Spielers. */ void get_player_move(void) { int x, y; printf("Geben Sie die X,Y-Koordinaten fuer Ihren Zug ein: "); scanf("%d%*c%d", &x, &y); x--; y--; if(matrix[x][y]!= ' '){ printf("Ungueltiger Zug, versuchen Sie es noch einmal.\n"); get_player_move(); } else matrix[x][y] = 'X'; } /* Beschaffe einen Zug vom Computer. */ void get_computer_move(void) { int i, j; for(i=0; i<3; i++){ for(j=0; j<3; j++) if(matrix[i][j]==' ') break; if(matrix[i][j]==' ') break; } if(i*j==9) { printf("Unentschieden\n"); exit(0); } else matrix[i][j] = 'O'; } /* Zeige die Matrix auf dem Bildschirm an. */ void disp_matrix(void) { int t; for(t=0; t<3; t++) { printf(" %c | %c | %c ",matrix[t][0], matrix[t][1], matrix [t][2]); if(t!=2) printf("\n---|---|---\n"); } printf("\n"); } /* Sieh nach, ob es einen Gewinner gibt. */ char check(void) { int i; for(i=0; i<3; i++) /* Ueberpruefe die Zeilen. */ if(matrix[i][0]==matrix[i][1] && matrix[i][0]==matrix[i][2]) return matrix[i][0]; for(i=0; i<3; i++) /* Ueberpruefe die Spalten.*/ if(matrix[0][i]==matrix[1][i] && matrix[0][i]==matrix[2][i]) return matrix[0][i]; /* Ueberpruefe die Diagonalen*/ if(matrix[0][0]==matrix[1][1] && matrix[1][1]==matrix[2][2]) return matrix[0][0]; if(matrix[0][2]==matrix[1][1] && matrix[1][1]==matrix[2][0]) return matrix[0][2]; return ' '; }Aber wenn ich erlich bin verseteh ich davon nur #include <> und return und son bisschen was anderes. Also ich habe echt nicht viel vom C++...noch nicht.
Zu dem Qk: Warum stehen immerwieder Zahlen in [], dass verstehe ich nicht, aber ich dneke, da muss ich nicht fragen, sondern lesen, oder? Und was is die matrix? Ich dachte das gibt es nicht wirklich
und woher weiß man, das dieses matrix Ding in der Bibliothek steht?@_matze:
Darf ich denn ma fragen was du zokkst? Also als C++ Programmierer und Zokker, würde es mich schon ganz gerne mal interessieren, ich habe da auch schon einen Gedanken :pDanke!!!
Mfg André
P.S.: Da habe ich noch die frage, dass wenn ich eine .exe geschrieben habe, die was aussagt(z.B. in der konsole) und sie an andere verschike, geschieht nichts bei denen, habe ich auch selbs schon gemerkt. Wieso passiert bei denen nichts? Haben die vielleicht nicht die rechte dazu?
-
Mega_Noob schrieb:
Warum stehen immerwieder Zahlen in [], dass verstehe ich nicht, aber ich dneke, da muss ich nicht fragen, sondern lesen, oder?
Ja, das solltest du. Das sind absolute Grundlagen. Der []-Operator wird benutzt, da es sich um ein Array (Feld) handelt, indem Fall um ein 2-dimensionales (deshalb zweimal []). Unbedingt mal in ein Tutorial/Buch schauen!
Mega_Noob schrieb:
Und was is die matrix? Ich dachte das gibt es nicht wirklich
und woher weiß man, das dieses matrix Ding in der Bibliothek steht?Doch, es gibt die Matrix wirklich!

Das hat aber nichts mit dem Film zu tun, keine Sorge. Du musst weder eine rote noch eine blaue Pille schlucken!
Eine Matrix ist ein 2-dimensionales Feld, mit dem man auch rechnen kann.Sowas hier ist eine 3x3-Matrix (wie auch im Beispiel-Code):
1 0 0
0 0 1
1 1 0Mega_Noob schrieb:
@_matze:
Darf ich denn ma fragen was du zokkst? Also als C++ Programmierer und Zokker, würde es mich schon ganz gerne mal interessieren, ich habe da auch schon einen Gedanken :pIch zocke die meisten Genres (Ego- und 3rd Person Shooter, Runden- und Echtzeit-Strategie, auch mal ne WiSi, Rennspiele, Flugsimulationen (als es sie noch gab), RPGs (aber nicht Online), sehr gerne auch Adventures, ...).
Dein Gedanke interessiert mich aber jetzt. Was hast du denn gedacht?
Mega_Noob schrieb:
P.S.: Da habe ich noch die frage, dass wenn ich eine .exe geschrieben habe, die was aussagt(z.B. in der konsole) und sie an andere verschike, geschieht nichts bei denen, habe ich auch selbs schon gemerkt. Wieso passiert bei denen nichts? Haben die vielleicht nicht die rechte dazu?
Hmm, was passiert denn? Vielleicht ein kurz aufflackerndes Konsolenfenster? In dem Fall musst du am Ende deines Programms (am Ende von main, vor return) verhindern, dass das Programm sich beendet und die Konsole somit geschlossen wird. Das kannst du z.b. mit "cin.get()" machen.
-
Mega_Noob schrieb:
Aber wenn ich erlich bin verseteh ich davon nur #include <> und return und son bisschen was anderes. Also ich habe echt nicht viel vom C++...noch nicht.
Da hilft wie gesagt nur lernen, dann kommt das von selbst. Vor allem das Ausprobieren und Selber Programmieren bringen dich weiter in C++. Meistens ist es nicht gerade hilfreich, wenn man versucht, irgendwelche Quelltexte von anderen zu verstehen und selber deren Syntax noch nicht vollständig beherrscht.
Mega_Noob schrieb:
Zu dem Qk: Warum stehen immerwieder Zahlen in [], dass verstehe ich nicht, aber ich dneke, da muss ich nicht fragen, sondern lesen, oder?
Das sind sogenannte Arrays (Felder), also Variablen, die mehrere Werte speichern können. Per [] kann man auf ein Element dieses Feldes zugreifen. Beginn am besten deine Lektüre von Anfang an, dann wird das sicher noch ausführlicher erklärt.
Mega_Noob schrieb:
Und was is die matrix? Ich dachte das gibt es nicht wirklich
und woher weiß man, das dieses matrix Ding in der Bibliothek steht?Damit ist wohl eher nicht das Konstrukt zur Vorspiegelung eines realen Lebens aus dem gleichnamigen Film gemeint ;).
In der Informatik oder Mathematik nennt man Tabellen, die Zahlenwerte aufnehmen können, Matrizen (wobei man bei Feldern, die auf die keine arithmetischen Operationen angewandt werden, eher Arrays nennt). Arrays gehören zur Programmiersprache C++, stehen also nicht in einer separaten Bibliothek. Für mathematische Matrizen (für Matrizenrechnung, siehe hier) gibt es separate Bibliotheken, aber ich denke, die brauchen dich momentan nicht zu interessieren.Mega_Noob schrieb:
P.S.: Da habe ich noch die frage, dass wenn ich eine .exe geschrieben habe, die was aussagt(z.B. in der konsole) und sie an andere verschike, geschieht nichts bei denen, habe ich auch selbs schon gemerkt. Wieso passiert bei denen nichts? Haben die vielleicht nicht die rechte dazu?
Das wird wohl nicht an den Rechten liegen. Funktioniert die Anwendung bei dir, wenn du sie ohne IDE startest? Eventuell ist sie mit anderen Systemen (nicht Linux) nicht kompatibel...
-
Erstaml @_matze:
Ich dachte du spielst sowas schönes wie CSS, BF2 oder COD4 ausgesucht, aber das was du speilst, hat mich überrascht.Dann noch, das die Anwendung bei anderen nicht geht, es stimmt, es flackert einmal die konsole auf. Aber das auf Windows.
Dann @Nexus:
Es geht auf meinem Rechner einwandfrei, denn das was ich dort geschrieben habe, läuft auf Windows bei mir super, aber auf anderen Winows Rechnern nicht.@all:
Ich versuche dann mal den Befehl von _matze "cin.get()" und dnan mal schauen, was geschieht. Ich weiß jetz aber nicht genau, ob das Buch, was ich schonmal angegeben habe(von Amazone) ob mir das auch hilft, so zu werden wie ihr. Wenn ihr noch so freundlich wärt, könntet ihr mir auch ein Buch vorschlagen, mit dem ihr das lernen konntet. Danke Nochmal an alle! Will gar net aufhören zu schreiben und zu lesen, das macht echt einfach spaß von Euch Hilfe zu bekommen.
Mfg André
-
Ich spiele CSS, BF2 (auch 2142) und CoD4! Insofern lagst du richtig! Aber nicht nur...
-
Aye.... das ist schön

Naja, wenn ich heute Abend wieder zu Hause bin, dann werde ich mal schauen ob ich ein paar gute Tutorials im internet finde und wie gesagt, wenn ihr so freundlich wärt, könntet ihr mir ja auch zeigen/schreiben welche/s Buch/Bücher IHR benutzt habt.
Danke!!!
Mfg André
-
Mega_Noob schrieb:
Aye.... das ist schön

Naja, wenn ich heute Abend wieder zu Hause bin, dann werde ich mal schauen ob ich ein paar gute Tutorials im internet finde und wie gesagt, wenn ihr so freundlich wärt, könntet ihr mir ja auch zeigen/schreiben welche/s Buch/Bücher IHR benutzt habt.
Danke!!!
Mfg André
Kann ich nicht. Ich habe damals ein sehr mäßiges Buch benutzt und werde nur wieder geschlagen, wenn ich dir das hier empfehle.

Ich habe mich dann durchs Internet gewurschtelt (weiß jetzt aber aus dem Kopf keine bestimmten Tuts) und auch anhand unseres Firmen-Source gelernt. Auch hier im Forum habe ich 'ne Menge gelernt. Hier gibt's schon einiges an Wissen. Zum Beispiel:
Tutorials (Übersicht):
http://www.c-plusplus.net/cms/modules.php?op=modload&name=Downloads&file=index&req=viewsdownload&sid=2Artikel (Beispiele):
http://www.c-plusplus.net/forum/viewtopic-var-t-is-152915.html
http://www.c-plusplus.net/forum/viewtopic-var-t-is-124532.html
http://www.c-plusplus.net/forum/viewtopic-var-t-is-155739.html
http://www.c-plusplus.net/forum/viewtopic-var-t-is-159231.htmlBuchtipps (Übersicht):
http://www.c-plusplus.net/cms/modules.php?op=modload&name=mbBooks&func=db&theme=cpp&sortby=titleEinfach mal stöbern!
-
Oh man! Danke... aber damit hast du es mir sogar noch schwerer gemacht

Ich weiß jetz nicht ob ich mir das Buch con Amazone (auf der ersten Seite schon beschrieben) kaufen sollte, oder eins der anderen vielen!? Es gibt sooo viele, aber ich kann doch nicht alle lesen! Was soll ich denn nur tuhn?!
Mh.... naja, ich denke, das C++ Buch für Linux, sollte mir erstmal ein wenig weiterhelfen. Meine Mutter ist zum Glück so, dass wen es ums lesen geht, das sie mir da ein wenig mehr ausgibt, anders wie im normalen Alltag
Naja, ich denke ich kann erstmal so noch ein Bisschen lernen!Danke nochmal!
Mfg André
P.S.: Was soll man denn eigentlich an Stelle von
gotonehmen?
-
Mega_Noob schrieb:
Was soll man denn eigentlich an Stelle von
gotonehmen?
Sämtliche anderen Kontrollstrukturen, die zur Verfügung stehen! Also hauptsächlich kopf- und fußgesteuerte und Zähl-Schleifen (while, do while, for) und Verzweigungen (if, switch). Das ist meistens die bessere Wahl.
-
öhhhmm... ja. Ich glaube ich sollte dann doch leiber erstmal ein wenig lesen, denn mit if() und while kann ich nur bissl was anfangen, aber mit do while, habe ich noch nie gearbeitet. wie nutzt man sie denn? kannst du mir nicht einen kleinen QK hier schnell reinschreiben wo man sie deutlisch erkennt? Wäre super nett, danke!
Mfg André
-
int x=0; while(x<10) { //kopfgesteuert, Bedingung wird schon vor dem ersten Durchlauf geprüft //mache was } do { //mache was }while(x<10); //schwanz... äh fussgesteuert, Bedingung wird erst nach dem ersten Durchlauf geprüftSo, jetzt aber die Nase in die Bücher bzw. die virtuelle Nase in die Tutorials!
-
Bei der Do-While-Schleife wird der Schleifenrumpf in jedem Fall mindestens einmal durchlaufen, weil die Bedingung erst zum Schluss geprüft wird.
while (Bedingung) { // tu etwas... }Wenn die Variable
Bedingunghier falsch ist, wird "tu etwas" gar nie ausgeführt. Bei einer Do-While-Schleife hingegen wird es mindestens einmal ausgeführt, selbst wennBedingungfalsch ist.do { // tu etwas... } while (Bedingung); // Semikolon!