Záhada v C -Vyřešeno a otázky

Miroslav Šinko sinkomiro na gmail.com
Neděle Leden 24 00:24:13 CET 2021


Momentalne len k tomuto:

 > Tak jsem typ dat v poli
 > změnil na uint32_t, aby se to tam vešlo. Jenže jsem ho změnil v extern
 > deklaraci v .h, ale ne v tý hlavní v .c. A to způsobilo všechny
 > následující problémy. Normálně při podobných rozdílech překladač
 > protestuje, není mi jasné, proč tentokrát neprotestoval.

Mate v subore deklarace.c includovany header deklarace.h? Pri 
rozdielnosti typov by mal prekladac protestovat. Ak include tu nemate a 
header includujete len do inych zdrojakov, kompilator nema ako rozoznat 
rozdiel v typoch premennych. Kompiluje sa kazdy .c subor zvlast. Teda 
pri kompilacii deklarace.c bude bez include .h spokojny. A pri 
kompilacii ostatnych .c, ktore includuju deklarace.h nema dovod protestovat.

miro



Další informace o konferenci Hw-list