Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > С - substring


Автор: sergioK1 23.9.2011, 11:09
Код

void substring(int i, int j, char *ch) {
  printf("The substring is: %.*s\n", j - i, &ch[i]);
}


что это за запись %,*s, где такое продукуметировано?

Автор: xvr 23.9.2011, 11:32
%.*s
% - Начало формата
. - Знак 'обрезать до требуемой длинны' (т.е. даже если исходная строка длиннее, то ее обрежут при печати)
* - В качестве поля с длинной использовать следующий параметр
s - Тип аргумента - строка

Автор: newbee 23.9.2011, 11:32
Запись %.Ns говорит, что нужно распечатать N символов. Запись %.*s говорит, что количество распечатываемых символов нужно взять из аргумента printf.

http://linux.die.net/man/3/printf - где-то там должно быть задокументировано.

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