Jazyk C:
Informace pro studenty (letní semestr 2021/2022)


Informace, termíny:

Zkouška - viz rozvrh (+info na poslední přednášce) - nezapomeňte se přihlásit

T2: psalo 85, výsledky budou nejpozději v pondělí,
REKLAMACE: předběžně v úterý 14:00+ vzdáleně přes https://meet.fit.vutbr.cz/IJC
(výjimečně po dohodě e-mailem i později/osobně)

T1: psalo 152 studentů.


Před zkouškou čtěte odkaz "cílové znalosti"
Upozornění: Ke zkoušce je nutné mít identifikační průkaz a minimálně 2 listy čistého papíru A4


V IS je fórum pro komunikaci studentů


Poznámky: Programovat se naučíte nejlépe praxí - pište si krátké programy
Tip1: Jak zjistit předdefinovaná makra: echo|gcc -E -dM -
Tip2: Překlad s ladicími informacemi: gcc -g program.c
Tip3: Profiling: perf (nebo gcc -pg program.c; ./a.out; gprof)
Tip4: #define MAKRO_PRIKAZ do{ prikazy... }while(0)
Tip5: Automatické generování závislostí pro make: gcc -MM *.c > dep
Tip6: Výpis po fázi preprocessing: gcc -E -P src.c
Tip7: Kontrola odkazů a indexování: gcc -fsanitize=address program.c
Tip8: Výpis zapnutých optimalizací: gcc -Q -O2 --help=optimizers
Tip9: Vypnutí ASLR: setarch `uname -m` -R ./program
TipA: Zabudování LD_LIBRARY_PATH=. do programu: gcc -Wl,-rpath,.
Doporučuji nahlédnutí do C FAQ (viz Texty)
Poznámky k licencím: Free software , Open source , Creative Commons , (SPDX License List)

Plán výuky:

Přednášky:

Domácí úkoly:

Inspirace: Nifty Assignments

Další informace:

TODO:

TODO: doplnit ("undefined behaviour", kontrola přetečení, memset+free optimalizace, Arduino, atd.)
Bezpečnost: Spectre a podobné útoky?

Pro informaci:
Bjarne Stroustrup: výslovnost
floating point
soutěž
Proč číslovat od nuly
různá ABI: velikosti, zarovnání, předávání parametrů
*** on-line překladač,
* Linux x86 Program Start Up
struct packing,


Odkazy: moje stránka o programování v C a C++ a o programování obecně


Poslední modifikace: 23. May 2022
Připomínky k obsahu stránky posílejte na e-mail: peringer AT fit.vutbr.cz