Я разрабатываю модуль Python на C, который анализирует очень эффективный протокол, который использует динамические целочисленные размеры. Целые числа, отправленные с использованием этого протокола, могут варьироваться по размеру от эквивалента «короткого» C до «длинного long».
В протоколе есть байт, который определяет тип отправляемой переменной (от короткой до длинной длинной), но я не уверен, как с этим справиться в коде. Прямо сейчас я устанавливаю пустой указатель и выделяю память в соответствии с размером отправляемого значения, а затем использую atoi, atol и atoll для установки этого указателя. Проблема в том, что мне нужно иметь доступ к этому значению, и я не могу сделать это без последующего приведения.
Как можно решить эту проблему?