Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > изменить ширину строки


Автор: marina12 4.6.2013, 12:07
Здравствуйте, подскажите пожалуйста, как изменить через printf ширину выводимой на экран строки?
допустим,в строке лежит "programmers"
а мне нужно,чтобы длина строки была равна 5, то есть выводилось "progr",а остальное обрезалось.
Вроде бы должно быть что то типа printf("%5.5s",.....)
Что значат числа 5 и 5 перед s???

Автор: baldina 4.6.2013, 12:16
первая 5 означает ширину поля, точка и вторая 5 для строк ничего не означает (используется для чисел с плавающей запятой)
http://codepad.org/fvd0n3d4

Автор: marina12 4.6.2013, 12:58
а у меня почему то наоборот, если пишу %5s то строка не обрезается, а если же поставлю точку %5.5s  - обрезает как надо, почему так?

Автор: baldina 4.6.2013, 13:46
я туплю. значение после точки для строк имеет значение, это максимальное число выводимых символов

Добавлено через 25 секунд
http://www.cplusplus.com/reference/cstdio/printf/

Автор: marina12 4.6.2013, 13:55
большое спасибо!smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)