Ответ 1
ptrdiff_t index = pointer_found - array_name;
Во многих функциях поиска C (bsearch приходит на ум), если результат найден, возвращается указатель на пятно в массиве. Как я могу преобразовать этот указатель в индекс в массив, который был обыскан (используя арифметику указателя, я предполагаю).
ptrdiff_t index = pointer_found - array_name;