Если две системы используют разные представления для отрицательных целых чисел (например, дополнение до двух, знаковая величина), то передайте числа в виде строк и проанализируйте их в целые числа на приемнике.Не так эффективно, но если вы не передаете большое количество цифр, это не будет иметь большого значения.Если нужно передать много чисел, вы можете использовать некоторую форму сжатия.
В качестве альтернативы, укажите свое сетевое представление для отрицательных чисел и напишите свои ntohsl
и htonsl
.
При любом подходе в каждой системе будет один номер, который не может быть представлен в другой;вам нужно решить, как поступить при получении этого номера.