posso vedere uso pratico per una variabile qualificata const volatile
, comeEsiste un uso pratico per un puntatore `volatile restrict`?
const volatile uint64_t seconds_since_1970;
se un meccanismo hardware sottostante aggiorna il valore ogni secondo, ma la variabile non è scrivibile (eventualmente incorporato) hardware. E poiché tutti e tre i qualificatori di tipo (quattro in C11) sono considerati indipendenti, sembra che tutte le combinazioni siano consentite. Ma io sono in perdita immaginare una situazione di vita reale in cui un restrict volatile
puntatore qualificato avrebbe davvero senso:
uint32_t * restrict volatile pointer_to_some_uint32;
[EDIT: Per chiarire: Sia volatile
e restrict
applicano al puntatore, non l'oggetto puntato a!]
Si tratta di un costrutto permesso dal linguaggio ma inutile da solo, o mi manca qualche area applicativa in cui questo può essere utile?
Quattro? 'const'' volatile' 'restrict' ...... Puoi dirmi qual è il quarto qualificatore? Scusa per le mie piccole conoscenze> o < – ikh
@ikh C11 definisce un qualificatore '_Atomic'. –