реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Функция sprintf
-SANYCH-
сообщение Jul 27 2009, 11:33
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 289
Регистрация: 6-12-05
Пользователь №: 11 864



Как заставить функцию sprintf((char*)Input,"%05s",Tempbuff) писать в массив Input лидирующие нули перед числом в место пробелов?
IAR 5.30
Go to the top of the page
 
+Quote Post
SSerge
сообщение Jul 27 2009, 11:41
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528



%s выводит строку (Tempbuff должен быть указателем на char), какие ещё ведущие нули?
Вот "%05d" - другое дело, он выведет не менее пяти цифр с ведущими нулями, но и Tempbuff тогда предполагается типа int.


--------------------
Russia est omnis divisa in partes octo.
Go to the top of the page
 
+Quote Post
-SANYCH-
сообщение Jul 27 2009, 12:08
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 289
Регистрация: 6-12-05
Пользователь №: 11 864



тогда %05s и например %2.5s – какая разница?
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Jul 27 2009, 12:39
Сообщение #4


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(-SANYCH- @ Jul 27 2009, 16:08) *
тогда %05s и например %2.5s – какая разница?

Первое будет работать, второе - нет


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
-SANYCH-
сообщение Jul 27 2009, 12:43
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 289
Регистрация: 6-12-05
Пользователь №: 11 864



В IARе работает и то и другое, во только не так как надо.
Go to the top of the page
 
+Quote Post
HARMHARM
сообщение Jul 27 2009, 12:44
Сообщение #6


читатель даташитов
****

Группа: Свой
Сообщений: 853
Регистрация: 5-11-06
Из: Днепропетровск
Пользователь №: 21 999



Цитата(-SANYCH- @ Jul 27 2009, 15:08) *
тогда %05s и например %2.5s – какая разница?

%05s это вообще ерунда.
%2.5s это вывод строки из минимум двух, максимум 5 символов.
%05d вывод 5 знаков числа типа int, дополненного нулями
%2.5d вывод минимум двух, максимум 5 знаков. Если меньше двух знаков, ИМХО дополнится нулями.
А вообще читайте wiki. Подробнее, чем там, написать сложно.
Go to the top of the page
 
+Quote Post
mdmitry
сообщение Jul 27 2009, 12:51
Сообщение #7


Начинающий профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648



Цитата(-SANYCH- @ Jul 27 2009, 16:08) *
тогда %05s и например %2.5s – какая разница?

Керниган, Ритчи. Язык программирования Си. раздел 7.2. Подробно описан форматный ввод-вывод с примерами.


--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jul 27 2009, 14:03
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(-SANYCH- @ Jul 27 2009, 14:33) *
Как..

Moderator:
Потрудитесь не захламлять основные ветки форума детскими вопросами. Перенес.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 07:46
Рейтинг@Mail.ru


Страница сгенерированна за 0.01419 секунд с 7
ELECTRONIX ©2004-2016