Skocz do zawartości
PL
Szukaj na Pecetowiczu
  • Utwórz konto

[C++] Obliczenie pozostałych godzin do danego wydarzenia


Rekomendowane odpowiedzi

Cześć wiecie może jak obliczyć w C++ ile godzin zostało do danego wydarzenia ? np. do 10.12.2018

Odnośnik do komentarza
Udostępnij na innych stronach

Number of days between two dates C++ - Stack Overflow

#include <iostream>
#include <ctime>

int main()
{
    struct std::tm a = {0,0,0,24,5,104}; /* June 24, 2004 */
    struct std::tm b = {0,0,0,5,6,104}; /* July 5, 2004 */
    std::time_t x = std::mktime(&a);
    std::time_t y = std::mktime(&b);
    if ( x != (std::time_t)(-1) && y != (std::time_t)(-1) )
    {
        double difference = std::difftime(y, x) / (60 * 60 * 24);
        std::cout << std::ctime(&x);
        std::cout << std::ctime(&y);
        std::cout << "difference = " << difference << " days" << std::endl;
    }
    return 0;
}
Odnośnik do komentarza
Udostępnij na innych stronach

(edytowane)

A można zamiast tych liczb w klamrach dać zmienną ? tam gdzie jest struct std::tm a = {godzina, minuta, sekunda,24,5,104);?? Tak żeby wszystko działało 

Edytowane przez Magmus
Odnośnik do komentarza
Udostępnij na innych stronach

Pytasz, bo sprawdziłeś i nie działa, czy nawet nie sprawdzałeś?

Odnośnik do komentarza
Udostępnij na innych stronach

W sumie sprawdziłem ale nie działa bo chciałem dodać że pobiera aktualną datę i wstawia do tamtych miejsc 

Odnośnik do komentarza
Udostępnij na innych stronach

(edytowane)

How to get current time and date in C++? - Stack Overflow

#include <ctime>
  #include <iostream>

  int main() {
  std::time_t t = std::time(0);   // get time now
  std::tm* now = std::localtime(&t);
  std::cout << (now->tm_year + 1900) << '-' 
    << (now->tm_mon + 1) << '-'
    <<  now->tm_mday
    << "\n";
}

I podmiana na zmienne działa. Przed chwilą testowałem.

Edytowane przez El Profesor
Odnośnik do komentarza
Udostępnij na innych stronach

Dobra działa tak jak chciałem dziękuję bardzo ☺️ 

Odnośnik do komentarza
Udostępnij na innych stronach

Kontynuuj dyskusję

Dołącz do Pecetowicza, aby kontynuować dyskusję w tym wątku.

  • Dodaj nową pozycję...
  • Dodaj nową pozycję...