спецификатор типа printf - PullRequest
0 голосов
/ 15 июля 2010

Теперь я хочу знать, что означает эта строка:

printf («Ответ:% 00010.6f», 22);

Он печатает: 022.000000.Но путь?я знаю, что 6f означает float.

спасибо за ответы

Ответы [ 4 ]

2 голосов
/ 15 июля 2010

Поначалу подумав, что это C (результат долгой привычки), я понял, что это для PHP.В основном то же самое, но кажется, что константа обрабатывается по-разному.

В любом случае параметры в вашем коде разбиваются следующим образом:

  • f = печатать число в виде числа с плавающей запятой
  • 10 = общая ширина поля из десяти цифр
  • 000 = вывести до 3 начальных нулей, когда это применимо (т. Е. Если от десятичной точки не осталось 3 значащих цифр)
  • .= использовать точку в качестве десятичного разделителя
  • 6 = шесть знаков после запятой

Кажется, что параметры печати для printf в PHP на самом деле находятся на странице sprintf .

0 голосов
/ 15 июля 2010

эта строка формата означает:

  • используйте 0 в качестве символа заполнения
  • заполните как минимум 3 символа перед. (2 -> 002, 23 -> 023, более длинные номера остаются без изменений)
  • отображать ровно 10 символов (включая разделитель)
  • использовать. в качестве десятичного разделителя
  • отображать 6 цифр после разделителя
  • тип float
0 голосов
/ 15 июля 2010

printf («Ответ:% f», 22) введет число 22 в строку «Ответ:% f» вместо «% f» и напечатает его как число с плавающей запятой («f» для » плавать "). Числа между «%» и «f» должны устанавливать формат - количество цифр, которое будет иметь распечатка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...