Constant: Constant means the value of the variable can not be changed in the program.
Volatile: Volatile tells the compiler not to optimize anything that has to do with the volatile variable.
Now coming to the second problem check the following statement
const volatile int T=10;
const qualifier means that the T cannot be modified through code. If you attempt to do so the compiler will provide a diagnostic. Volatile still means that compiler cannot optimize or reorder access to T.
Practical Usage:
Accessing shared memory in read-only mode.
Accessing hardware registers in read-only mode.