ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
21 июля
1293089 Топик полностью
il-2 (17.03.2023 06:31, просмотров: 168) ответил SciFi на Не для p. Простое правило: чтобы было для p, нужно, чтобы volatile было поближе к p: "char* volatile p;"
Кстати, я по этой причине всегда пишу const, volatile... ПОСЛЕ типа, а не наоборот (как почему-то делает большинство). Это помогает избегать такой путаницы. 
// const находится СПРАВА от типа, на который он действует
int * const ptr = &array;       // указатель для чтения/записи, ptr - нельзя модифицировать
int const * ptr;                // указатель только для чтения, ptr - можно изменять
int const * const ptr = &array; // указатель только для чтения, ptr - нельзя модифицировать

// const находится СЛЕВА от типа, на который действует. Получается невразумительно.
const int * ptr;                // указатель только для чтения, ptr - можно изменять
// const находится СЛЕВА и СПРАВА от типа, на который действует. Получается невразумительно.
const int * const ptr = &array; // указатель только для чтения, ptr - нельзя модифицировать