Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[C++] Pobieranie czasu w sekundach od uruchomienia komputera

Ostatnio zmodyfikowano 2015-02-14 18:15
Autor Wiadomość
fokusx
Temat założony przez niniejszego użytkownika
[C++] Pobieranie czasu w sekundach od uruchomienia komputera
» 2015-02-14 12:17:16
Chcę pobrać czas liczony w sekundach od momentu uruchomienia programu.

Jak poprawnie go pobrać?
C/C++
double czas = time();
?


btw.
zmienna musi być typu double.
P-126548
megatron
» 2015-02-14 12:41:35
C/C++
#include <cstdio>
#include <ctime>
#include <Windows.h>

int main()
{
    while( 1 ) {
        system( "cls" );
        printf( "czas: %i\n", clock() / 1000 );
        Sleep( 10 );
    }
    return 0;
}

edit:
sry ze takie troche gotowe ;p
P-126550
SocrateZ
» 2015-02-14 12:44:14
zmienna musi być typu double.
Dlaczego?
Od czasu jest zmienna
time_t
. Pobierając czas najlepiej zapisywać go do tej zmiennej. Zazwyczaj jest ona zdefiniowana jako
long long int
 lub
long int
 w zależności od architektury i kompilatora (więc zazwyczaj jest ona 64 bitowa).

I dlaczego sądzisz że funkcja
time()
 źle pobiera czas?
P-126551
Brunon3
do Megatron
» 2015-02-14 14:32:10
Ale @fokusx prosi o pobieranie czasu do double, a nie wypisanie go na ekran. ;)
P-126571
megatron
» 2015-02-14 14:40:14
C/C++
#include <iostream>
#include <ctime>
#include <Windows.h>

using namespace std;

int main()
{
    double process_time_in_seconds;
    while( 1 ) {
        system( "cls" );
        process_time_in_seconds = clock() / 1000;
        cout << process_time_in_seconds;
        Sleep( 10 );
    }
    return 0;
}
nie rozumiem problemu ;)
P-126577
fokusx
Temat założony przez niniejszego użytkownika
» 2015-02-14 17:38:35
W takim razie czym różni się clock() od time()?

clock() - pokazuje milisekundy od momentu uruchomienia programu, a
time() - ogólny, lokalny czas, także w milisekundach, tak?
P-126605
aksen
» 2015-02-14 18:15:30
P-126612
« 1 »
  Strona 1 z 1