Как динамически указать длину поля для вывода в printf?
Нужно запрашивать у пользователя имя и выводить в поле, которое на 3 символа больше чем длина введенного имени.
Как динамически подставить значение в форматную строку? Или как перевести число в строку чтобы можно было вставить значение как строку. Так вроде бы можно делать. printf("%" ЗНАЧЕНИЕ ДЛИНЫ "s", name);
1.Можете просто сформировать правильную Си строку, добавив в конце нулевой символ, тогда printf правильно сработает при спецификаторе формата %s.
2.Если у вас не строка, а байтовый массив (т.е. нет завершающего нулевого символа), тогда можно следующим образом: printf("%.*s", (int)len, str)