Går det med en mycket, mycket, mycket enkel kod att pausa sitt program i ca 2-3 sek? Det får max vara en eller två rader. Måste man inte "includa" nått då? Jag får det inte att funka. #include <dos.h> #include <stdlib.h> //eller <cstdlib> om du kör med namespaces hej Ush fy vad hemskt... *Ryser* (syftar på loopen) Delay finns det inget som heter. Slepp finns däremot och det är en Windows-funktion, som pausar programmet i ett antal millisekunder. I alla Windows-program ska man endast inkludera windows.h och använda WinMain som main-funktion. Du kan ju använda dig av delay(3000); som i det här fallet pausar programet i 3 sek. Om jag minns rätt så finns funktionen i dos.h. Skulle bara försvara mig... Var inget angrep mot dig. Kanske formulerade det dåligt. Pausa program
MvH Dan "DaPe" PerssonSv: Pausa program
#include <iostream.h>
void main()
{
cout << "Hej";
delay(2000);
cout << " då";
}
Dan "DaPe" PerssonSv: Pausa program
#include <string.h>
for (count = 0; count <= 2; count++)
{
outportb(DATA, init[count]);
outportb(CONTROL,inportb(CONTROL) | 0x01); /* Set Strobe (Enable)*/
delay(20); /* Larger Delay for INIT */
outportb(CONTROL,inportb(CONTROL) & 0xFE); /* Reset Strobe (Enable)*/
delay(20); /* Larger Delay for INIT */
}
Ett exempel jag hittade
Förmodligen är det #include <dos.h> som behövs
tror
SvenSv: Pausa program
...
const int TimeDiff = 100 //eller något annat värde
int Time1, Time2;
...
Time1 = time();
while (time()-Time1 < TimeDiff)
; //Gör inget
Du kan skriva ihop de två sista raderna, men då blir läsbarheten sämre.
För övrigt finns det antagligen någon sådan funktion ändå, jag råkar bara inte känna till den. Du kan förenkla lite genom att göra det till en funktion. Den kan tyvärr inte göras inline pga loopen.
void Delay(int TimeDiff)
{
int Time1, Time2;
if (TimeDiff <= 0) return;
Time1 = time();
while (time()-Time1 < TimeDiff) ;
return;
}
/Niklas JanssonSv: Pausa program
iofs. är jag ute på okända marker, men Delay( ms )
måste väl funka. Eller ??
undrar
SvenSv: Pausa program
Programet kommer ju då stjäla resurser i onödan...
Inget snyggt sätt...
Har för mig att Delay anropar suspendthread. Vilket stoppar exectuering i antalet angiven tid.Sv: Pausa program
Exempel:
#include <windows.h>
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
Sleep(2000);
}Sv: Pausa program
Om du vill veta vilken include fil som ingår,
så kan man i Borland C++ ställa sig på Delay och trycka shift + F1
och då få fram hjälpen för Delay och även se i vilken include
fil som den finns.
Anna-Karin, som har läst hela tre vecor C++ och kanske har cyklat vilse helt :-)Sv: Pausa program
Jag vet att den själ resurser. Men eftersom DaPe verkade vilja ha en snabb lösning och eftersom jag var i skolan hade jag inte möjlighet att kolla upp andra funktioner snabbt. Eftersom det var snack om dos.h så antog jag dessutom att det var tänkt som ett consoleprogram.
Consoleprogram är ju ändå inte så snabba, och man tittar ju i regel bara på det programmet, och har inte några enorma prestandakrav på andra program, så multitasking har ju inte allt för hög prioritet.
Men visst, det finns ju mycket bättre sätt och dom har ju uppenbarat sig här.
/Niklas JanssonSv: Pausa program
Men är så starkt emot lösninga vilket är ineffektiva, när det finns alternativ.
SvenPon gav ju en dos lösning och Swey en windows lösning. Tackar dessa för deras hjälp.
Jag har ju inget att göra i detta forum... :O)