ZAP - Prednáška č. 7 | Week 7 (2019/2020)
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.
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.
nechodím na prednášky