~={yellow}Важное=~
Если при объявлении указателю не присваивается действительный адрес, то его необходимо обнулить.
// C
char *ptr = NULL;
// C++
char *ptr = nullptr;
Указатели на разные типы данных имеют одинаковый размер, но отличаются длиной арифметического шага. Размер указателей зависит от конкретной архитектуры.
sizeof(char*)
~={yellow}Обобщенный указатель=~ - это указатель на void. Обычно используют для хранения содержимого других указателей без запоминания их типов.
void print_bytes(void* data, size_t length)
{
unsigned char *ptr = data;
}