У меня есть функция, прототип которой выглядит следующим образом:
void foo(const char * data);
В другом месте моего кода у меня есть глобальная переменная, объявленная следующим образом:
volatile char var[100];
Всякий раз, когда я пытаюсь это сделать:
foo(var);
Компилятор выдает следующее сообщение об ошибке:
Аргумент типа "volatile char *" несовместим с параметром типа "const char *"
Почему это так?Насколько я понимаю, переменная в моей функции не может изменять указатель или его содержимое.Я понимаю, что, поскольку моя глобальная переменная является изменчивой, она может измениться в любое время, но, поскольку вполне допустимо иметь переменную переменную const, я не понимаю, почему я получаю эту ошибку компилятора.
Спасибо
- Амр