Gast
#783987
Ich weiss, dass hier die meisten zwar auf AVR schwören, aber vielleicht kann doch jemand helfen: Ich verwende MPLAB IDE V8.00 mit dem Target Device "dspic30f4013". Nun kann ich C-Applikationen zwar schön übersetzen, jedoch hätte ich auch gerne die Location meiner globalen Variablen im mapfile. Das funktioniert aber nur, wenn man die Variable deklariert als int myvar; // ausserhalb jeder funktion, also global Nun verstehe ich nicht, wieso dies nicht funktioniert, wenn ich die Variable in einer Funktion als static int myvar; // in der funktion, aber statisch deklariere. Diese Variablen sind doch ebenfalls im heap (klar, dass es zwei Funktionen geben kann mit gleichem Variablennamen, aber die müssten dann unterschiedlichen heap belegen)? Und alle meine Programme haben bisher immer funktioniert, wenn man globale Variablen als statisch zusätzlich deklariert (wozu auch immer...): static int vmyvar; // ausserhalb jeder funktion + static Auch in diesem Fall scheint nichts im map file auf. Was ist denn hier der Unterschied zu der Variante ohne static ? Vielleicht kann wer was dazu beitragen... Vielen Dank