Приведение типов при работе с указателями

При работе с указателями не следует забывать о типах значений, на которые они указывают.

char c[10];

char* pc = c;

int* pi = pc;

Компилятор языка C даст предупреждение, а компилятор C++ эту операцию считает не безопасной, поэтому выдает ошибку: указатели указывают на разные типы данных. Устранить неоднозначность может только программист, выполнив приведение типов:

int* pi = (int*)pc;

для компилятора с++ чаще встречается другой форма записи с аналогичным действием:

int* pi = reinterpret_cast<int*>(pc);

Выполняя явное приведение типов, программист будет сам отвечать за дальнейшую корректность работы приведенных указателей.



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: