❓ Что такое арифметика указателей
Арифметика указателей это выполнение математических операций: сложение, вычитание, инкремент, декремент; над указателями, то есть над переменными, которые хранят адреса в памяти.
Ключевая идея в том, что когда вы прибавляете к указателю число, он смещается не на это количество байт, а на количество элементов того типа, на который он указывает.
Почему это считается опасным и почему в Go от этого отказались: ничто не мешает сдвинуть указатель за пределы массива и обратиться к чужой или несуществующей памяти. Компилятор это не проверяет, а результат — труднонаходимые ошибки, повреждение данных или уязвимости.
🐸 Библиотека Go для собеса
Post #1387
1.43K