ZAP - Prednáška č. 7 | Week 7 (2019/2020)

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 sa venuje organizačným záležitostiam k semestrálnym projektom (PS2, PS3, PS4 a ich deadliny stanovené na štvrtky) a následne prechádza na hlavnú tému – prácu s reťazcami v jazyku C. Na príklade programu implementujúceho Cézarovu šifru sa vysvetľuje princíp posunu znakov v abecede s využitím operácie modulo na zabezpečenie cyklického prechodu cez koniec abecedy. Ďalej sa preberá reprezentácia reťazcov ako polí znakov ukončených terminačným znakom '\0', rozdiel medzi dĺžkou reťazca a veľkosťou poľa v pamäti, rôzne spôsoby inicializácie reťazcov vrátane konštantných reťazcov spôsobujúcich chybu segmentation fault pri pokuse o zápis. Na záver sa predstavuje knižnica string.h a funkcia strlen na zisťovanie dĺžky reťazca.

  • - Deadliny na PS2, PS3 a nasledujúce zadania sú nastavené na štvrtky, nové zadanie sa zverejňuje každý týždeň
  • - Testy pre PS2 a PS3 sa postupne sprístupňujú, PS4 je vo výrobe
  • - Cézarova šifra posúva znaky abecedy o zadaný počet pozícií pomocou výpočtu indexu znaku odčítaním hodnoty 'A'
  • - Operácia modulo 26 zabezpečuje cyklické prerotovanie na začiatok abecedy pri prekročení znaku Z
  • - Reťazec v jazyku C je pole znakov ukončené terminačným znakom '\0'
  • - Veľkosť poľa v pamäti je o 1 väčšia ako dĺžka reťazca kvôli terminátoru
  • - Reťazce definované ako konštanty (char *) nemožno meniť, pokus o zápis spôsobí chybu segmentation fault
  • - Knižnica string.h poskytuje funkcie ako strlen na jednoduchšiu prácu s reťazcami

Zhrnutie pripravené s pomocou AI z prepisu videa.