Jeg pleier å lese en del på senga, og har nå startet på en bok som heter "Deep C Secrets", veldig spennanes bok. Men mange triks og metoder man ikkje har vært klar over på forhånd. Men det var et avsnitt som fikk meg til å gruble litt, jeg siterer:
Hva gjelder dette? Vil det si at hvis jeg definerer en statisk variabel som allocares i stacken, så er adressen til denne variabelen forhåndsett? Vil dette også gjelde dynamisk allocaring i heap'en?
Og hvordan fungerer dette i praksis? Siden programmet som jeg kompilere kan jo ikkje vite om andre bruker akkurat den adressen i minnet? Jeg er klar over at moderne datamaskiner bruker virtuell minne, men har nokså begrensede kunnskaper rundt det.
Sitat av Deep C Secrets
The compiler allocates an address (or l-value) to each variable. This address is known at compiletime, and is where the variable will be kept at runtime. In contrast, the value stored
in a variable at runtime (its r-value) is not known until runtime.
in a variable at runtime (its r-value) is not known until runtime.
Vis hele sitatet...
Og hvordan fungerer dette i praksis? Siden programmet som jeg kompilere kan jo ikkje vite om andre bruker akkurat den adressen i minnet? Jeg er klar over at moderne datamaskiner bruker virtuell minne, men har nokså begrensede kunnskaper rundt det.