История изменений
Исправление Iron_Bug, (текущая версия) :
обычно если есть переменное число аргументов, то передаётся какой-то счётчик или формат, как в printf, или специальный аргумент-флаг, который указывает, что хватит читать. gcc при выходе за пределы аргументов возвращает ноль, но за все платформы не поручусь. я бы не стала надеяться на этот ноль.
если есть какая-то разноформатная фигня неопределённой длины, которую надо передавать в функцию, иногда её просто сериализуют. ну или какие-то указатели на void и типы, в массиве, например, или в списке.
а что касается сисколла, в большинстве ABI там 6 параметров. емнип, musl поддерживает не все архитектуры и, видимо, они ограничились стандартными шестью.
Исправление Iron_Bug, :
обычно если есть переменное число аргументов, то передаётся какой-то счётчик или формат, как в printf, или специальный аргумент-флаг, который указывает, что хватит читать. gcc при выходе за пределы аргументов возвращает ноль, но за все платформы не поручусь. я бы не стала надеяться на этот ноль.
если есть какая-то разноформатная фигня неопределённой длины, которую надо передавать в функцию, иногда её просто сериализуют. ну или какие-то указатели на void и типы, в массиве, например, или в списке.
Исправление Iron_Bug, :
обычно если есть переменное число аргументов, то передаётся какой-то счётчик или формат, как в printf, или специальный аргумент-флаг, который указывает, что хватит читать. gcc при выходе за пределы аргументов возвращает ноль, но за все платформы не поручусь. я бы не стала надеяться на этот ноль.
если есть какая-то разноформатная фигня неопределённой длины, которую надо передавать в функцию, иногда её просто сериализуют.
Исходная версия Iron_Bug, :
обычно если есть переменное число аргументов, то передаётся какой-то счётчик или формат, как в printf, или специальный аргумент-флаг, который указывает, что хватит читать. gcc при выходе за пределы аргументов возвращает ноль, но за все платформы не поручусь. я бы не стала надеяться на этот ноль.