История изменений
Исправление vodz, (текущая версия) :
printf(), пока ты не обосрался с количеством и типом аргумента, абсолютно корректен.
Вот только va* и vprintf() появились не сразу, и все делали какой-нибудь my_error() именно вот так как у вас в стартовом коде.
UB
UB плох, когда результат непредсказуем. Тут же всё понятно. Ну можно залезть чуть глубже в стек. Но там гарантированно как минимум main(ac,av,env)+текущий вызов этого syscall, то есть в конец стека точно не упрёмся, а значения не задействованные в текущем syscall и не юзаются.
Исходная версия vodz, :
printf(), пока ты не обосрался с количеством и типом аргумента, абсолютно корректен.
Вот только ни va*, ни vprintf() появились не сразу, и все делали какой-нибудь my_error() именно вот так как у вас в стартовом коде.
UB
UB плох, когда результат непредсказуем. Тут же всё понятно. Ну можно залезть чуть глубже в стек. Но там гарантированно как минимум main(ac,av,env)+текущий вызов этого syscall, то есть в конец стека точно не упрёмся, а значения не задеёствыованные в текущем syscall и не юзаются.