Я знаю, как вызвать vprintf и т. Д. Из реализации printf соответственно.
Но что, если я хочу динамически создавать список аргументов в коде, особенно для vsscanf
, где я знаю, что они все указатели?
Есть ли какой-нибудь достаточно переносимый способ, которым я могу преобразовать мой динамически размещенный и заполненный массив указателей (на самом деле std :: vector) в va_list?
Это все для того, чтобы я мог добавить в конец аргумент% n и определить, сколько фактически было использовано ввода, чтобы дать ответ на ftell в моей собственной FILE-подобной оболочке.
Кроме того, чтобы сделать что-то волосатое с трубкой; или написание моей собственной реализации; или разделение строки и выполнение одного аргумента за раз; Я не вижу, как еще я могу определить использование входного потока, особенно для sscanf. Так что другие идеи на этот счет могут быть интересны.