2017 - Týždeň 3

Zdroj
ručne priradené
Pridané

Pozrieť na YouTube →

Preber si túto prednášku so svojou AI

Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.

Otvoriť AI: ChatGPT · Claude · Gemini

Zhrnutie prednášky

Prednáška v úvode oznamuje prvé zadanie a blížiaci sa Arduino Day v Košiciach, potom pokračuje štruktúrami z minulého týždňa. Ukladanie veku osoby ako pevnej hodnoty je nevhodné, pretože sa mení a ide o dopočítavané pole porušujúce normálnu formu databáz; správnejšie je uložiť dátum narodenia a vek vypočítať. Počítač reprezentuje čas ako jedno celé číslo, teda počet sekúnd od 1. januára 1970 (Unix timestamp), ktoré vracia funkcia time() z knižnice time.h v type time_t. Ten je na danej platforme 8-bajtový long, a preto sa pri výpise používa formát %ld. Na príkladoch s veľkosťou 8, 16 a 32 bitov sa rozoberá, aký rozsah dátumov sa zmestí do 4-bajtového znamienkového integeru (INT_MAX z limits.h), čo vedie k problému roku 2038.

  • - Vek osoby je dopočítavané pole, preto sa ukladá dátum narodenia a vek sa počíta podľa aktuálneho času.
  • - Čas sa v počítači reprezentuje ako jedno celé číslo, počet sekúnd od 1. 1. 1970 o polnoci (Unix time).
  • - Funkcia time() z time.h vracia aktuálny čas v type time_t, ktorý je zadefinovaný cez typedef.
  • - Typ time_t nie je štruktúra, ale zamaskovaný long (8 bajtov), vypisuje sa cez %ld.
  • - Veľkosť typov sa zisťuje operátorom sizeof a maximálna hodnota integeru konštantou INT_MAX z limits.h.
  • - Znamienkový 4-bajtový integer pojme len polovicu z cca 4 miliárd hodnôt, čo vedie k problému roku 2038.
  • - Oznamy: prvé zadanie na dva týždne a konferencia Arduino Day 5. apríla v Košiciach.

Zhrnutie pripravené s pomocou AI z prepisu videa.