Сообщение от jimon
у каждого компилятора есть свой ABI (Application Binary Interface), иногда он задаётся самим языком, а иногда не задаётся так вот в C и C++ он не определяется стандартами, отсюда твои проблемы ?
ps. если да, то советую глянуть как у нас устроен вызов функций - везде юзается какое нибудь заранее обговоренное соглашение о вызове ( stdcall и прочие : http://en.wikipedia.org/wiki/X86_calling_conventions ), собственно если вызывающий код (например в другой библиотеке) не знает о соглашении то ничего не получится, вот так же делается и с структурами - надо кидать структуры между программами с разным ABI напрямую ? обговаривай соглашение и всё, зачастую выравнивание на 4 обговорить и хватит, самое сложное - это указатель на метод, он везде разный размер имеет (от 8 до 20 байт)
|
УРА! именно это я и хотел услышать! В следующий раз буду задавать вопрос менее обтекаемо. Собственно, я это уже выжал из треда (хотя если б не тупил и задал вопрос нормально - то получил ответ сразу же
).
И именно поэтому я рассуждал о костыле в виде текстового представления.
p.s.: да проблемы с соглашением вызова как-то были - тема была изучена в необходимом объёме
Теперь просветите: насколько непопулярны системы с big-endian? Стоит ли опасаться непереносимости сохранённых чисел?