Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  21 2390
Hva skriver jeg hvis jeg vil ha en pause etter programmet har skrevet ut en linje... hvis jeg skriver:

#include <iostream.h>
#include <stdio.h>

int main(nAntallArg, char* pszArg[])

{
cout << "Min linje";

return 0;
}

...hvis jeg bare skriver dette så bare skriver programmet linjen og returnerer til operativsystemet med en gang, hva må jeg gjøre for at linjen skal stå der og ta en pause etter at den har skrevet dette ordet og dermed etter jeg har trykket en tast så skal det returnere til operativsystemet.....
m0b
m0b's Avatar
DonorAdministrator
Mange måter å gjøre dette på, en ting du kan gjøre er å inkludere stdlib.h og deretter bruke system("pause"); dær hvor du vil ha pausen i koden din. En annen ting du kan gjøre er å kjøre programmet ditt ifra cmd.
Trådstarter
ok, takk for svar
Trådstarter
du vet ikke tilfeldigvis hva jeg skriver for å få et linjeskift også ?
m0b
m0b's Avatar
DonorAdministrator
i c++ kan du bruke endl.. f.eks
cout << "heihopp" << endl; vil resultere i et linjeskift..
bruker du c kan du bruke printf("Heiheihei \n Nå skifta linja..");
Trådstarter
ok, takker for enda et godt svar
eller includere conio.h og bruke getch();
rotta`s svar er svaret!

saccess: vet du i det hele tatt hva du har skrevet i signaturen din?
Sist endret av Eriken; 21. mars 2003 kl. 22:33.
∮ F dr = 0
system("sleep sekunder");
Noe sånt du mener?
hmm.... det er mange maater for pause, for aa nevne noen:

#include <unistd.h>
sleep(sekunder); eller usleep(mikrosekunder);

---

#include <stdlib.h>
system("kommando som gj0r jobben");

---

int a;
cin >> a;
switch(a) {
default: break;
}
m0b
m0b's Avatar
DonorAdministrator
na1t, hva mener du med at det er svaret..?
Som sagt er det flere muligheter for å gjøre dette. føler ikke at det er noe "fasit" svar.. En annen mulighet er å bruke sleep funksjonen. definert som sleep(DWORD dwMilliseconds); går også ann å bruker cin.get(); enda en mulighet ville vært å lagt til
char c;
cin << c;


edit: heh.. Du posta vist mens jeg dreiv og semi-posta(ja jeg brukte 5 minutter på å vimse fram og tilbake mellom surfing og posting.. eller et kvarter)
Sist endret av m0b; 21. mars 2003 kl. 23:50.
jeg mener at getch() er den komandoen han er ute etter.. han vil at terminal vinduet ikke skal lukke seg etter at programmet er "ferdig", du må trykke en tast først....
Hvis du vil at den skal quite på j/n kan du gjøre som følgende:

#include <iostream.h>

char end[255];

int main()
{
while(end[255] != 'j')
{
cout << "Dette er en test om jeg kan while......\n";
cout << "Vil du avslutte dette programmet [j/n]?\n";
cin >> end[255];
}

return 0;
}
Opprinnelig postet av ZpiFF
char end[255];
Vis hele sitatet...
Faktisk... Jeje
ække bare bare å telle vettu..
Jeg trodde end[255] gategn nummer 256 i en bokstavrekke på 255 bokstaver. Hvorfor ikke bare bruke en enkelt char end;?
Burde vel også hatt
while (end !='j' || end !='J')
Opprinnelig postet av ZpiFF
Hvis du vil at den skal quite på j/n kan du gjøre som følgende:
[kode strippet]
Vis hele sitatet...
Her er en liten fiks på din:

Kode

#include <iostream>
#include <cstdlib>
#include <conio.h>
using namespace std;

int main()
{
	char end;

	do {
		cout << endl << "Trykk J for å avslutte\t";
		end = getch();
	} while(toupper(end) != 'J') ;

	return EXIT_SUCCESS;
}
Sist endret av rune420; 23. mars 2003 kl. 12:43.
▼ ... over en måned senere ... ▼
Gammel Traver
lockhead's Avatar
Opprinnelig postet av |d13m0b
i c++ kan du bruke endl.. f.eks
cout << "heihopp" << endl; vil resultere i et linjeskift..
bruker du c kan du bruke printf("Heiheihei \n Nå skifta linja..");
Vis hele sitatet...
kan man ikke bruke \n i c++?

mener og kunne bruke: cout << "im back\n was up"; eller noe sånt
m0b
m0b's Avatar
DonorAdministrator
Joda, det kan du godt. Så lenge du inkluderer stdio.h går det vel greit regner jeg med
▼ ... mange måneder senere ... ▼
jeg vil anbefale at du bruker følgende:

Kode

std::cin.ignore();    // kun hvis du har en std::cin i koden din, hvis ikke, trengs den ikke
og

Kode

std::cin.get();
Her er et eksempel uten std::cin

Kode

#include <iostream>

int main()
{
    std::cout << "Hello world!\n";

    std::cout << "Press any key to exit...";
    std::cin.get();

 return 0;
}
Her er et eksempel med std::cin

Kode

#include <iostream>

int main()
{
    int x;
    
    std::cout << "Please enter a number: ";
    std::cin >> x;
    std::cout << "You entered " << x <<"!\n";

    std::cout << "Press any key to exit...";
    std::cin.ignore();
    std::cin.get();

 return 0;
}
Hvorfor bruke cin.get(); og cin.ignore(); istedenfor system("pause"); eller getch(); ?
Fordi det er standard-bestemt og portable. Det funker på alle OS, og trenger ikke noe ekstra lib for å kunne kjøres.
m0b
m0b's Avatar
DonorAdministrator
hva er vitsen med å dra opp nesten ett år gamle tråder, fyren har sannsynligvis kommet seg forbi stadiet han trenger hjelp med pause.
hehe, nesj, kjeda meg :P tenkte ikke helt over dato'n før etter jeg hadde post'a heller, men men..