Gå til innhold

hvorfor lukkes programmene mine?


Anbefalte innlegg

Skrevet (endret)

kompileren jeg bruker heter Dev-c++!

for hver gang jeg lager ett lite program som skal utføre ett regnestykke som 2 tall skal skrives inn, så lukker vinduet seg før jeg får frem svaret! kansje det er kompileren jeg bruker? er det noen som vet hvorfor? eller hvilken kompiler jeg kan bruke som er litt "brukervennelig".

 

cin.get virker heller ikke!

Endret av wildonln
Videoannonse
Annonse
Skrevet
Jeg er stort sett ny innenfor programering! kompileren jeg bruker heter Dev-c++!

for hver gang jeg lager ett lite program som skal utføre ett regnestykke som 2 tall skal skrives inn, så lukker vinduet seg før jeg får frem svaret! kansje det er kompileren jeg bruker? er det noen som vet hvorfor? eller hvilken kompiler jeg kan bruke som er litt "brukervennelig".

 

cin.get virker heller ikke!

8656981[/snapback]

 

Anbefaler at du endrer emnetittel før tråden stenges.

Anbefaler også at du leser andre poster i forumet der det er gitt flere mulige måter å få vinduet til å holde seg oppe på.

Skrevet

Det er vel heller det at du ma ha en "Trykk her nar du er lei av programmet, og for a lukke vinduet"

Jeg har ikke begynta laere meg C++, men det var noe av det forste som stod i boken.

Skrevet
Det er vel heller det at du ma ha en "Trykk her nar du er lei av programmet, og for a lukke vinduet"

Jeg har ikke begynta laere meg C++, men det var noe av det forste som stod i boken.

8657164[/snapback]

 

jeg fant svaret på spm mitt! bare jeg som var for rask til å lage meg en tråd!

:tease: men takk for hjelpen fordeom!

  • 2 uker senere...
Gjest Slettet-aNZFa3
Skrevet

hva var svaret?

Skrevet (endret)

Edit: ignore først...

cin.ignore(numeric_limits<int>::max(), '\n');
cin.get();

Er vel den foretrukne måten å gjøre det på.

 

"cin.get();" har ikke ønsket effekt hvis programmet leser inn input tidligere i programmet. Da vil '\n' fortsatt være igjen i input-bufferet, og cin::get vil da lese dette tegnet istedenfor å vente på at brukeren skal taste inn noe.

Endret av staalezh
Gjest Slettet+142
Skrevet (endret)

Krever ikke system()-kommandoen et av bibliotekene windows eller cstdlib?

 

Edit: *leif; en/et

Endret av Slettet+142
Skrevet
Krever ikke system()-kommandoen et av bibliotekene windows eller cstdlib?

 

Edit: *leif; en/et

8777258[/snapback]

 

Jo, den krever cstdlib.

Skrevet
cin.get(numeric_limits<int>::max(), '\n');

Er vel den foretrukne måten å gjøre det på.

 

"cin.get();" har ikke ønsket effekt hvis programmet leser inn input tidligere i programmet. Da vil '\n' fortsatt være igjen i input-bufferet, og cin::get vil da lese dette tegnet istedenfor å vente på at brukeren skal taste inn noe.

8777193[/snapback]

 

Men benytter man cin.ignore() etter input, slik at det ikke blir hengende noe igjen?

 

cout("Skriv inn et tall");
t = cin.get(); cin.ignore();

 

Ørjan...

Skrevet (endret)

Orjanp: Det stemmer. Jeg som surra litt der. cin.ignore brukes selvfølgelig først, for å fjerne uønsket dritt som henger igjen, og så kaller vi cin.get(); :p

 

Så da blir det noe slikt som dette her:

cin.ignore(numeric_limits<int>::max(), '\n');
cin.get();

 

... hvis ikke man foretrekker å gjøre det etter hver gang man leser inn input, that is

Endret av staalezh
Skrevet
... hvis ikke man foretrekker å gjøre det etter hver gang man leser inn input, that is

8780753[/snapback]

 

Det var dette jeg trodde var vanlig. Men så har jeg ikke benyttet C++ på seks år. Så det er mye som er endret siden da. :)

 

Ørjan...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...