31. juli 2004 - 21:19Der er
23 kommentarer og 1 løsning
Problem med newbie kode
Hej Alle
Jeg er begyndt at snuse til c+, og jeg vil lige prøve denne kode:
#include <iostream> int main() { cout<<"HEY, you, I'm alive! Oh, and Hello World!"; return 0; }
men den kommer med denne log i dev c++:
Kompiler: Default compiler Building Makefile: "C:\Documents and Settings\Rasmusha\Dokumenter\Makefile.win" Eksekverer make... make.exe -f "C:\Documents and Settings\Rasmusha\Dokumenter\Makefile.win" all g++.exe -c helloworld.cpp -o helloworld.o -I"C:/Dev-Cpp/include/c++" -I"C:/Dev-Cpp/include/c++/mingw32" -I"C:/Dev-Cpp/include/c++/backward" -I"C:/Dev-Cpp/include"
helloworld.cpp: In function `int main()': helloworld.cpp:4: `cout' undeclared (first use this function) helloworld.cpp:4: (Each undeclared identifier is reported only once for each function it appears in.)
Jeb ruger cev c++ 4.9.8.0, og når jeg indsætter thommas_nj's kode kommer der en cmd prompt op der skriver tryk på en vilkårlig tast for at fortsætte hvis jeg gør det lukker den bare, hvad skal det nu sige?
du kender godt cmd/dos promt (den du får frem ved at skrive cmd i start/kør. Prøv at starte den og skriv pause, så får du samme besked. i system() kan du bruge alle cmd kommandoerne.
Grunden til at den lukker bagefter er at koden ganske enkelt afslutter. system("pause") får den til at vente på et tastetryk og holder derfor vinduet åben.
bertelbrander>> kendte ikke lige til det med return 0; i C++. Er det så noget man betragter som værende grim kode at undlade, eller er det bare en gammel C-vane der bliver ført videre?
Jeg tror mest at det er en gammel vane fra C der er ført videre. Jeg kender ikke nogen grund til at man har valgt at det at undlade en return i main svarer til en return 0; det er en anelse ulogisk. Jeg putter som regel stadig en return ind til sidst i main.
Bemærk at VisualC++ 6.0 kommer med følgende warning hvis man undlader return: warning C4508: 'main' : function should return a value; 'void' return type assumed
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.