Комментарии 5
Языки высокого уровня обеспечивают портируемость теоретически, а вот на практике есть множество нюансов. Скажем, Си никак не стандартизирует размеры своих базовых типов -- например, int может быть и 2-, и 4-, и 8-байтовым, а это напрямую влияет на портируемость использующих его программ. Так что перенести нечто на сях с одной архитектуры на другую, конечно, проще, чем если оно было написано на ассемблере, но перенос вряд ли сведётся к простой перекомпиляции, особенно если это древний код, когда со стандартизацией всё вообще было плохо.
перенос вряд ли сведётся к простой перекомпиляции
По всякому может быть. Если программист не закладывался на n - байтный int, а использовал sizeof, то перекомпиляции будет достаточно.Но реальные программы используют какие то системные API, а даже POSIX не закон а набор рекомендаций, и 100% POSIX-совместимости нет нигде. #ifdef наше всё.
@Beeline_tech неужели дела компании Билайн настолько плохи, что на редактора денег нет совсем? Который хотя бы подчистил за переводившим статью школьником несогласованные предложения. А в идеале проводил отбраковку исходно корявых статей и в целом проверял соответствие заголовка бессвязному нагромождению фактов внутри.
История POSIX: путь к портируемому ПО