Forum huvudsida -> Programmering -> Simpelt nybörjarfel
Sidor: 1
Lenno | 00:07 - 22:a November 2007 | Post #1 | |
Medlem Inlägg: 4 Skicka PM |
#include <iostream> using std::cout; using std::cin; int main() { int ett_tal; cout << "Skriv ditt favorit tal: "; cin >> ett_tal; if (ett_tal == 17) { cout << "Du valde 17, det minst slumpmässiga valda talet!\n"; } else { cout << "Du valde ett alldeles vanligt tal.\n"; } cout << "Ett fönster som stannar uppe!"; cin.get(); return 0; } När jag skrivit in mitt tal så stängs fönstret ner direkt, vad är fel? Kollade lite i faq-tråden men blev inte klokare av den. |
Hetzz | 00:34 - 22:a November 2007 | Post #2 | |
Medlem Inlägg: 516 Skicka PM |
Ska det inte gå att lösa med dubbel cin.get(); ? Jag tror inte det är relaterat till problemet, borde man inte köra void main() istället för int? -------------------------
|
Python | 08:49 - 22:a November 2007 | Post #3 | |
Medlem Inlägg: 157 Skicka PM |
main() kan inte vara void enligt ANSI-standarden. Prova att lägga till en cin.get(); ------------------------- ------------------------- |
Cpp_skater | 15:46 - 22:a November 2007 | Post #4 | |
Medlem Inlägg: 43 Skicka PM |
att lägga till ett cin.ignore() före cin.get() funkar för mig |
stampe | 17:10 - 22:a November 2007 | Post #5 | |
Medlem Inlägg: 30 Skicka PM |
det finns flera alternativ, jag brukar köra med att includera #include <coniho.h> och sen där jag vill ha pause skriver jag getch(); sen kan du ju oxå självklart gö som många andra cin.ignore(255,''\n''); cin.get(); eller: cin.get(); cin.get(); Lycka te |
Algon_Rithm | 20:01 - 22:a November 2007 | Post #6 | |
Medlem Inlägg: 4 Skicka PM |
Jag brukar lägga in en liten rad innan slutet.. system("PAUSE"); ..och det brukar funka för mig Lycka till! ------------------------- Ingen signatur! |
tobbez | 22:38 - 23:e November 2007 | Post #7 | |
Medlem Inlägg: 364 Skicka PM |
,,ven om metoderna med getch() och system() fungerar, är ingen av dem rekommenderade att använda. getch()-metoden då den inte är en standardfunktion (tillhör inte standarden), och system("pause") då den inte är platformsoberoende. Metoden med två cin.get() är inte heller den bästa, även om den fungerar. Mig veterligen är den rätta metoden: cin.ignore(255, ''\n''); cin.get(); Ett tips är också att läsa trådar med titlar som "Tips innan du skapar nya trådar": http://www.blinkenlights.se/forum/topic7/page1/ |
Lenno | 18:37 - 24:e November 2007 | Post #8 | |
Medlem Inlägg: 4 Skicka PM |
Ok. Tack för alla bra svar |
derfian | 13:43 - 25:e November 2007 | Post #9 | |
Medlem Inlägg: 149 Skicka PM |
Det Rätta Alternativet: starta ett terminalfönster/kommandoprompt, cd:a till katalogen där ditt program ligger och kör det (foo.exe, enter) |
Sidor: 1
Forum huvudsida -> Programmering -> Simpelt nybörjarfel
Du får inte posta i den här tråden | Till toppen
Datum
2024-12-22 10:38
Vecka: 51
Besökare
Inloggade: 0
Gäster: 605
Medlemmar
Medlemmar: 53576
Forum
Senaste inlägget: HAHA MÄNNISKAN LEVER ÄN (13:45 - 18:e Januari 2019, av Hetzz)
Wiki
Senaste ändringen:
3D (rev: 1, tid: 09:40 - 13:e November 2015)
Chatt
#blinkenlights @ Libera.Chat
Gratis shellkonton för IRC, webbsidor mm.