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;}
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;}
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...
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)
#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?
Det funkar ändå inte.
Jag använder Microsoft visual C++ 6.0.
Output WindowCompiling...
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.
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::
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;
}
↗ till inläggetlägg till en SYSTEM("PAUSE"); i slutet av koden så ska det stanna till.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;}
Jag har ju redan fårr hjälp med den. Men nu behöver jag hjälp med den andra.
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...
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?
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!
Ska du hålla på med c++ måste du kunna hålla reda på alla mellanslag och feltryckningar som ofta förekommer, ha inte så bråttom när du skriver något.
Vill du vara med i diskussionen?
Bli medlem Logga in