
Zitat von
sast
Jetzt habe ich für mich allerdings immer noch nicht geklärt, ob volatile nun für alle Variablen gilt die dahinter stehen, oder nur für die direkt folgende. Hat da jemand eine belastbare Aussage dazu?
Das volatile gilt für alle dahinter stehenden variablen.
Hab das mit einem relativ einfachen Test verifiziert:
Code:
//Test1:
volatile int foo1,foo2;
int *foo3;
foo3 = &foo2;
//Test2:
volatile int foo1,foo2;
volatile int *foo3;
foo3 = &foo2;
Bei Test1 meckert der Compiler:
warning: assignment discards qualifiers from pointer target type
Bei Test2 macht er das nicht. Also ist foo2 auch als volatile deklariert.
Gruß,
askazo
Lesezeichen