Linker, loader en uitvoerbare formaten
Hoe worden zwakke symbolen (weak symbols) door de linker behandeld?
- AEen zwak symbool krijgt altijd voorrang boven andere definities
- BAls er een gewone (sterke) definitie met dezelfde naam is, wordt die gebruikt, en anders de zwakke definitie
- CEen bestand met een zwak symbool kan niet worden gelinkt
Antwoord en toelichting tonen
Antwoord: B. Als er een gewone (sterke) definitie met dezelfde naam is, wordt die gebruikt, en anders de zwakke definitie
Een zwak symbool is een reservedefinitie van het type „gebruik deze als er geen andere definitie is”. In embedded software wordt vaak de standaardverwerking van een interrupthandler als zwak symbool klaargezet, zodat die wordt vervangen als de gebruiker een functie met dezelfde naam schrijft. Als sterke definities elkaar overlappen, volgt de fout multiple definition, maar overlap met een zwakke definitie is geen fout.
Verder: nog 9 vragen over Linker, loader en uitvoerbare formaten