Problem mit Hello World
-
SonnY|Wh!te schrieb:
Versuch mal:
#include "stdafx.h" #include "string" #include "iostream" #include "conio.h" using namespace std; int _tmain(int argc, _TCHAR* argv[]) { cout << ("") << endl; _getch(); return 0; }was hat das mitm manifest zu tun?!
-
Sry musst natürlich noch Nachricht eingeben
Alle includes sind zwar nicht nötig hab sie aber aus einem meiner Projekte kopiert. _getch() ist dafür das am ende wenn du irgennt eine taste drückst das programm beendet wird. (Deine Möglichkeit könnte auch funktionieren du hast return falschgeschrieben) Wenn am Anfang ein Fehler im Prog. ist kann es nicht debuggt werden und VC++ findet dann die Datei nicht 
Marc
-
Mhh, hab mal noch ein paar sachen ausprobiert, aber ich bekomme immer die meldung das diese Manifest dinges fehlt? Was muss ich den in den Ordner speichern, damit das system das Manifest findet?
-
Ich wüsste auch nicht, was SonnYs Antwort mit deinem Problem zu tun hat...
-
@Machine: Könntest du bitte aufhören hier rumzuspammen. Wenn du keine Ahnung vom Thema hast, dann halt dich bitte raus. Danke.
-
wo spamme ich bitte rum? er hat ein problem mit einer fehlenden datei und du gibst ihm einen komplett anderen sourcode, was sein problem in keinster weise lösen kann...

@LS: Einsteiger: versuch mal das projekt neu zu erstellen...
also:
"erstellen" -> "projektmappe neu erstellen"
vorher eventuell noch "erstellen" -> "projektmappe bereinigen"
-
Machine hat doch völlig Recht. Du scheinst die vorherigen Posts gar nicht richtig gelesen zu haben und postest einen völlig anderen Code (der nicht mal was ausgibt, überflüssige Header inkludiert und keine vernünftige Struktur hat -> Stichwort Einrücken), anstatt bei der Problemlösung zu helfen. Dass du Machine danach noch als ahnungslos bezeichnest, ist mehr als unangebracht.
@LS: Einsteiger:
Tut mir leid, ich weiß leider keine Lösung für dein Problem (Mashines letzter Vorschlag hört sich allerdings sinnvoll an). Aber ich empfehle dir, Sonny's Posts nicht ernst zu nehmen. Sein Code hilft dir nicht weiter und ist ein schlechtes Beispiel für Anfänger.
-
ich bin eigentlich SonnY|White und SonnY (Kurzform) aber das gegen Machine hab ich NIE geschrieben!!!
-
und sry das das was ich geschrieben hab nich passt aber bei mir funktionierts!
Ich bin der Meinung, wenn der Code beim ersten debuggen falsch ist kann der PC die Datei (und die Manifest nicht finden!) Und nochma sry zu Machine irgennt einer hat mit meinem Name was geschrieben
-
SonnY|Wh!te schrieb:
ich bin eigentlich SonnY|White und SonnY (Kurzform) aber das gegen Machine hab ich NIE geschrieben!!!
registrieren soll helfen

-
kloppt euch doch noch ein bisschen

naja, also ich hab das projekt nochmal neu erstellt und auch bereinigen lassen, das ändern nichts. So langsam finde ich das ziemlich komisch, wieso fehlt das manifest???
was ist das denn überhaupt, aus delphi kenne ich das garnicht. also schon, wenn man unter vista oder xp adminrechte braucht muss man ein manifest erstellen, aber die anwendung von mir soll doch nur einen kleinen Text ausgeben...
also nochmal ein paar daten, die vielleicht weiterhelfen...
Windows Vista 32bit
Visual Studio 2008 Pro. (gestartet mit adminrechten)Ich erstelle eine leere Win32 Konsolenanwendung (ohne vorkomipliere Hearder)
Dann erstelle ich eine neue C++ Datei (*.cpp)
Und schreibe diesen Code hinein:#include <iostream> int main() { cout << "Hallo Welt!\n"; retourn 0; }Dann erstelle ich das Projekt und bekomme vom Compiler die Meldung das dieses Manifest fehlt....
Hilfeeeee, was mache ich falsch????
-
Hallo,
prügeln muss man sich ja wirklich nicht und irgendwo hat ja jeder ein wenig Recht.So hast Du im letzten Quellcodeschnipsel z.B. immer noch retourn anstatt return stehen.
Hast Du mal probiert, vorkompilierte Header für die Projekterstellung zu nutzen? Zumdest vei VC++2005 würde der Header der <iostream> allein nicht ausreichen, dort müsstest Du zusätzlich ein #include "stdafx.h" verwenden.
Ich weiß, dass ich nicht von manifest gesprochen habe, aber auf eine offensichtliche Fehlerquelle im Quellcodeschnipsel sollte trotzdem hingewiesen werden dürfen.
Pfiat's eich
-
*freu* - ich hab den fehler gefunden. Die Idee dazu hatte "FreeCode". Ich musste den Code etwas verändern und noch eine Datei includen.
Hier der Code:
#include "stdafx.h" #include <iostream> int _tmain(int argc, _TCHAR* argv[]) { std::cout << "Hello World!\n"; return 0; }Was mich ein wenig wundert ist, dass es ohne dieses "std::" nicht funtioniert, denn dann bekommt man den Fehler, dass "cout" nicht gefunden wurde...
naja jetzt gehts ja...
danke an alle....

-
#include "stdafx.h" #include <iostream> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { cout << "Hello World!\n"; return 0; }dann gehts über das std::

-
so, hab mich jetzt sogar angemeldet....

Mir ist aber noch aufgefallen, dass wenn ich die Anwendung aus Windows heraus starte, sich das Fenster direkt wieder schließt. Ich denke mal das liegt daran, dass alle Befehle abgearbeitet sind, aber wie kann ich es schaffen, dass das Fenster weiterhin offen bleibt. Es reicht ja wenn das Programm auf einen Tastatur Befehl wartet. Aus Pascal kenne ich noch den Befehl "readkey", gibts den unter C++ auch? Weil ich finde es etwas störend, das Programm über die CMD ausführen zu müssen, um zu sehen obs klappt.....
-
Leos-Studio schrieb:
so, hab mich jetzt sogar angemeldet....

Mir ist aber noch aufgefallen, dass wenn ich die Anwendung aus Windows heraus starte, sich das Fenster direkt wieder schließt. Ich denke mal das liegt daran, dass alle Befehle abgearbeitet sind, aber wie kann ich es schaffen, dass das Fenster weiterhin offen bleibt. Es reicht ja wenn das Programm auf einen Tastatur Befehl wartet. Aus Pascal kenne ich noch den Befehl "readkey", gibts den unter C++ auch? Weil ich finde es etwas störend, das Programm über die CMD ausführen zu müssen, um zu sehen obs klappt.....
Pack z.B. ein cin.get() vor das Ende von main, dann wartet das Programm auf eine User-Eingabe. Das Fenster schließt sich erst, nachdem der User Enter gedrückt hat.
-
hmm, "cin" bekomme ich als nicht deklarierter Bezeichner angezeigt. Egal ob es es vor oder nach dem return 0; schreibe...
//EDIT:
Ups etwas schnell gewesen, "std::" muss ja wieder davor und ein ";" dahinter. Klappt doch...
-
Leos-Studio schrieb:
hmm, "cin" bekomme ich als nicht deklarierter Bezeichner angezeigt. Egal ob es es vor oder nach dem return 0; schreibe...
//EDIT:
Ups etwas schnell gewesen, "std::" muss ja wieder davor und ein ";" dahinter. Klappt doch...
Wenn du nicht jedesmal "std::" schreiben willst, dann packe an den Anfang der Datei (vor die main) einfach "using namespace std". Dann brauchst du für Elemente dieses Namensraums nicht extra die Bezeichnung des Namensraums anzugeben. Machine hat dir dazu schon ein Beispiel gepostet.
Btw, das cin.get() wäre relativ nutzlos hinter dem return 0. Du willst ja, das die Anweisung ausgeführt wird. Wenn du allerdings vorher die Funktion main durch die return-Anweisung verlässt, klappt das logischerweise nicht.
Wenn dir solche Programmabläufe manchmal nicht ganz klar sind (was für einen Anfänger völlig normal ist), dann empfiehlt es sich, das Programm schrittweise im Debugger zu durchlaufen (Stichwörter: Haltepunke/Breakpoints F9, Prozedurschritt/Einzelschritt F10/F11).
-
mit
_getch(). Die Funktion wartet am Ende auf einen Tastendruck und schließt dann. P.S musst [code]Conio.h[quote] includen! Viel spaß beim programmieren!!!
-
#include <iostream> using namespace std; int main() { cout << "Huhu, Du da!\n"; cin.get(); return 0; }Das sollte vollkommen ausreichen.
mkG Hxm