Firecracker Skrivet 5 Juni 2007 Rapport Skrivet 5 Juni 2007 Vad är det som är fel i den här koden? programmet stängs ned direkt jag startar det. #include<iostream> using std::cout; int main() { int ett_tal; ett_tal = 12; cout << ett_tal; return 0;} Citera
Katt Skrivet 5 Juni 2007 Rapport Skrivet 5 Juni 2007 Du måste ha några cin.get(): #include<iostream> using std::cout; int main() { int ett_tal; ett_tal = 12; cout << ett_tal; cin.get(); cin.get(); return 0; } Vet int om det funkar, får inte fram kompilatorn... Citera
Firecracker Skrivet 5 Juni 2007 Författare Rapport Skrivet 5 Juni 2007 Då jag har testat det blir det fel och här är felrapporten: Build Log --------------------Configuration: Program1 - Win32 Debug-------------------- Command Lines Creating temporary file "C:\DOCUME~1\Thomas\LOKALA~1\Temp\RSP1C7.tmp" with contents [ /nologo /MLd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /Fp"Debug/Program1.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c "E:\olika mappar\C++\Program1.cpp" ] Creating command line "cl.exe @C:\DOCUME~1\Thomas\LOKALA~1\Temp\RSP1C7.tmp" Creating temporary file "C:\DOCUME~1\Thomas\LOKALA~1\Temp\RSP1C8.tmp" with contents [ kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /incremental:yes /pdb:"Debug/Program1.pdb" /debug /machine:I386 /out:"Debug/Program1.exe" /pdbtype:sept ".\Debug\Program1.obj" ] Creating command line "link.exe @C:\DOCUME~1\Thomas\LOKALA~1\Temp\RSP1C8.tmp" Output Window Compiling... Program1.cpp E:\olika mappar\C++\Program1.cpp(10) : error C2065: 'cin' : undeclared identifier E:\olika mappar\C++\Program1.cpp(10) : error C2228: left of '.get' must have class/struct/union type E:\olika mappar\C++\Program1.cpp(11) : error C2228: left of '.get' must have class/struct/union type Error executing cl.exe. Results Program1.exe - 3 error(s), 0 warning(s) Citera
Vitdom Skrivet 5 Juni 2007 Rapport Skrivet 5 Juni 2007 (redigerat) #include <iostream> int main() { int ett_tal = 12; cout << ett_tal; cin.get(); return 0; } pröva den, jag lade till ett mellanslag när du la till bibloteket och valde vad variablen skulle ha för värde i ett kommando och lade till cin.get(); (cin.get(); måste vara med! om du andvänder cin kommandot måste du ha två stycken) OBS! Vilken kompilator andvänder du? Redigerat 5 Juni 2007 av Vitdom Citera
Firecracker Skrivet 5 Juni 2007 Författare Rapport Skrivet 5 Juni 2007 Det funkar ändå inte. Jag använder Microsoft visual C++ 6.0. Output Window Compiling... Program1.cpp E:\olika mappar\C++\Program1.cpp(7) : error C2065: 'cout' : undeclared identifier E:\olika mappar\C++\Program1.cpp(7) : warning C4552: '<<' : operator has no effect; expected operator with side-effect E:\olika mappar\C++\Program1.cpp(9) : error C2065: 'cin' : undeclared identifier E:\olika mappar\C++\Program1.cpp(9) : error C2228: left of '.get' must have class/struct/union type Error executing cl.exe. Citera
epaaj Skrivet 6 Juni 2007 Rapport Skrivet 6 Juni 2007 Det är för att du inte talar om vilken function det är du ska ha. Antar att du vill ha standard-funktionen. Då kan du antingen skriva det här direkt efter "#include...": using namespace std; Eller skriva det här framför alla "cin" och "cout": std:: Citera
Firecracker Skrivet 6 Juni 2007 Författare Rapport Skrivet 6 Juni 2007 tack så mycket eepaj! :D Det funkade. Men nu har jag ett till problem: Varför står det: error C2447: missing function header (old-style formal list ) När jag använder denna koden: #include <iostream> using namespace std; using std:: cout; using std:: cin; int main(); { int ett_tal; int ett_tal2; int a_ir_b; cout <<"vill du addera eller subtrahera (Skriv M för addera och S för subtahera)"; cin >>a_ir_b; if (a_ir_b==s); cout <<"Jasså, så du vill räkna minus."; return 0; } Citera
Boiuthh Skrivet 7 Juni 2007 Rapport Skrivet 7 Juni 2007 Vad är det som är fel i den här koden? programmet stängs ned direkt jag startar det. #include<iostream> using std::cout; int main() { int ett_tal; ett_tal = 12; cout << ett_tal; return 0;} lägg till en SYSTEM("PAUSE"); i slutet av koden så ska det stanna till. Citera
Firecracker Skrivet 7 Juni 2007 Författare Rapport Skrivet 7 Juni 2007 Jag har ju redan fårr hjälp med den. Men nu behöver jag hjälp med den andra. Citera
Katt Skrivet 7 Juni 2007 Rapport Skrivet 7 Juni 2007 Därför att du har sagt åt programet att a_ir_b består av en siffra, inte en bokstav eller string. Såhär kan du göra istället: #include <iostream> #include <string> using namespace std; int main() { int ett_tal; int ett_tal2; string a_ir_b; cout << "Vill du addera eller subtrahera (Skriv M för addera och S för subtahera) \n"; cin >>a_ir_b; if (a_ir_b == "S") { cout << "Jasså, så du vill räkna minus."; } cin.get(); cin.get(); return 0; } Det var lite småfel här och där som jag fixade... Citera
Firecracker Skrivet 7 Juni 2007 Författare Rapport Skrivet 7 Juni 2007 tack så hemskt mycket! :D Men då jag skriver detta: cin >> ett_tal; cout << "-"; cin >> ett_tal2; cout << ett_tal - ett_tal2; Så kommer minus tecknet en rad under talet. Hur ska man göra så att minustecknet hamnar på samma rad? Citera
Katt Skrivet 7 Juni 2007 Rapport Skrivet 7 Juni 2007 (redigerat) Här satt jag och hoppades att du skulle skriva motsatsen, men nähä då, här skall det krånglas till! :lol: Vad jag vet går det inte i dos att ha en string efter en intryckning från ett tangentbord. Men det går att fixa på andra sett! Detta är ett lite långsökt exempel: cin >> ett_tal; system("cls"); cout << ett_tal << " - "; cin >> ett_tal2; cout << "\n" << ett_tal - ett_tal2; Nu ska det funka! Aja, prova om det fungerar iaf.... Jag ska för tusan börja med C++ igen! Redigerat 7 Juni 2007 av CheatCat Citera
Rekommendera inlägg
Gå med i konversationen
Du kan skriva nu och registrera dig senare. Om du har ett konto, logga in nu för att posta med ditt konto.