This shows you the differences between two versions of the page.
cpl:labs:06 [2016/11/07 23:42] bogdan.nitulescu [Exerciții] |
cpl:labs:06 [2016/11/08 00:02] (current) bogdan.nitulescu [Exerciții] |
||
---|---|---|---|
Line 255: | Line 255: | ||
====== Exerciții ====== | ====== Exerciții ====== | ||
- | {{:cpl:labs:laborator-05-arhiva.zip|Arhiva}} laboratorului. | + | {{:cpl:labs:lab06_skel.zip|Arhiva}} laboratorului. |
- De ce nu există diferențe pentru definițiile lui v între următoarele semnături de funcții? <code c> void f(int * v); </code> și <code c> void g(int v[]); </code> | - De ce nu există diferențe pentru definițiile lui v între următoarele semnături de funcții? <code c> void f(int * v); </code> și <code c> void g(int v[]); </code> | ||
- Intrati in directorul ''diff_vec_ptr1''. Rulati ''make'' apoi rulati programul. Care este problema? Incercati sa explicati apoi rezolvati bug-ul. Puteti vedea acelasi comportament si ruland codul din directorul ''diff_vec_ptr2''. | - Intrati in directorul ''diff_vec_ptr1''. Rulati ''make'' apoi rulati programul. Care este problema? Incercati sa explicati apoi rezolvati bug-ul. Puteti vedea acelasi comportament si ruland codul din directorul ''diff_vec_ptr2''. | ||
Line 261: | Line 261: | ||
- Scrieți un program care să determine ordinea secțiunilor în memorie. | - Scrieți un program care să determine ordinea secțiunilor în memorie. | ||
* ''Hint'': Declarați obiecte în fiecare secțiune și verificați adresa. | * ''Hint'': Declarați obiecte în fiecare secțiune și verificați adresa. | ||
+ | - Intrati in directorul ''classes''. Fara a modifica functia main, faceti schimbari in fisierul ''classes.cpp'' astfel incat sa apara "different". Scoateti cast-urile catre void *. De ce afiseaza din nou "same"? | ||
- Modificați programul următor pentru a afișa **structurile sunt identice**: | - Modificați programul următor pentru a afișa **structurile sunt identice**: | ||
<file c ex8.c> | <file c ex8.c> | ||
Line 289: | Line 290: | ||
} | } | ||
</file> | </file> | ||
- | - Intrati in directorul ''classes'. Fara a modifica functia main, faceti schimbari in fisierul ''classes.cpp'' astfel incat sa apara "different". Scoateti cast-urile catre void *. De ce afiseaza din nou "same"? | ||
+ | ===== BONUS ===== | ||
+ | Intrati in directorul ''bonus'', compilati si rulati programul. De ce primim ''Segmentation fault''? In ce sectiuni se gasesc "Hello 1", "Hello 2", pc1, respectiv pc2? | ||