Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.72/123: Рейтинг темы: голосов - 123, средняя оценка - 4.72
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135

Как перенести параметры из ф-ции printf() в самодельную

04.06.2011, 09:22. Показов 26018. Ответов 104
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят, подскажите как решить задачу.
Нужно перенести параметры функции printf() в самодельную ф-цию myfunk(). При условии если булева переменная Х==1. Если не равна 1, то не переносить.
Задача осложняется тем, что число параметров ф-ции может быть переменным.
Подскажите пожалуйста, буду очень признателен.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.06.2011, 09:22
Ответы с готовыми решениями:

Как перенести параметры с XP на 7
Не знаю в какой ветке разместить тему, то ли в XP, то ли в 7... Всё началось с того, что установив win7, я не смог установить драйвер на...

Передача ф-ции как параметра другой ф-ции
struct pupil{ char surname; int school; int answer; int num; } tmp, a; int usl(int i, pupil a) { }

Параметры printf
Здравствуйте дорогие форумчане ;) У меня есть вопрос по следующему куску кода. Решив по практиковаться с консольным приложением у меня...

104
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
05.06.2011, 12:50
Студворк — интернет-сервис помощи студентам
Uklunok, Хех. А это смотря какая строка. У printf довольно много спецификаторов.
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
05.06.2011, 12:54
Лучший ответ Сообщение было отмечено как решение

Решение

Держи, я нагуглил это за тебя. Для embedded software. Есть вариант с stdarg и без stdarg. Я бы на твоем месте взял бы с stdarg.
http://www.menie.org/georges/embedded/. Там есть ссылка и на реализацию, поддерживающую плавающие числа.
3
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
05.06.2011, 12:58  [ТС]
Огоого сколько тут кодаО_о
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
05.06.2011, 12:59
Uklunok, вот и разбирайся
1
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
05.06.2011, 13:02  [ТС]
static int print(char **out, const char *format, va_list args ) - эта ф-ция получается будет вместо vprintf()?
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
05.06.2011, 13:03
Uklunok, там vprintf вообще никаким боком... А хотя да, можно и так сказать. Только не "вместо".
1
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
05.06.2011, 13:05  [ТС]
а если я подключаю заголовок #include <stdio.h>
то билдер ругается на эту строку:
extern int putchar(int c);
[C++ Error] Unit1.c(6): E2040 Declaration terminated incorrectly

Добавлено через 56 секунд
И про код господина fasked можно забыть чтоли? но он такой хороший
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
05.06.2011, 13:09
Uklunok, если у тебя нету vprintf - то да, можно забыть.
1
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
05.06.2011, 13:13  [ТС]
Ну здесь же всеровно сообщения выводятся через printf()....
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
05.06.2011, 13:14
Цитата Сообщение от Uklunok Посмотреть сообщение
а если я подключаю заголовок #include <stdio.h>
то билдер ругается на эту строку:
extern int putchar(int c);
А ты его не подключай.

Uklunok, там функция printf - своя, а не стандартная.
1
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
05.06.2011, 13:16  [ТС]
ААААА, всё понял, поменял название ф-ции на printf1(), и всеровно сообщения выводятся, нормально, значит можно полностью этот код и вставить.
Не подскажите в билдере ф-цию чтобы консоль не закрывалась, типа getch(), хочу глянуть достоверные данные выводятся...
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
05.06.2011, 13:17
system("pause"); из stdlib.h
1
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
05.06.2011, 13:30  [ТС]
Nameless One, Спасибо большое. Чтобы я без тебя делал. Выручил очень.
Сейчас попытаюсь вставить код в проект для МК

Добавлено через 8 минут
А как быть если #include "stdio.h" всё-таки нужен?
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
05.06.2011, 13:32
Uklunok, тогда нужно сделать так, чтобы имена объявляемых тобой функций не конфликтовали с именами функций из stdio.h
0
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
05.06.2011, 13:33  [ТС]
Просто эта ф-ция
stdioAttach(hUart); без не её похоже нельзя
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
05.06.2011, 13:35
Uklunok, какой у нее прототип?
0
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
05.06.2011, 13:48  [ТС]
Ок, получилось, щас буду пробовать

Добавлено через 1 минуту
Цитата Сообщение от Nameless One Посмотреть сообщение
Uklunok, какой у нее прототип?
Если интересно, то вот:

Syntax
int stdioAttach(VOS_HANDLE h)

Description
Attaches an I/O interface handle stdio streams, stdin, stdout and stderr. All three streams are attached to the same driver.
Cannot be used with a handle to the FAT file system driver or any driver that requires a structure to be passed in it's read() or write() handlers.

Parameters
h
Handle for stream operations.

Return Value
Always returns zero.

Добавлено через 7 минут
Плохи дела, компилятор виснет
Vinc.exe failed with return code 3221225477
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
05.06.2011, 13:50
если тебе нужна из stdio.h только эта функция, то напиши "extern int stdioAttach(VOS_HANDLE h);" и не подключай stdio.h

Добавлено через 28 секунд
Uklunok, а ошибок он никаких не пишет?
0
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
05.06.2011, 13:54  [ТС]
ругается на эту строку:
C
1
extern int my_putchar(int c);
[VinC.exe] : src\Runtime.c line 45: (error) C1404 too many types in declaration
типа двумя типами инициализирована ф-ция

Добавлено через 2 минуты
убрал int вроде скомпилил без ошибок, ща остальные ф-ции добавлю
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
05.06.2011, 13:56
Uklunok, попробуй убрать extern, а int оставь.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.06.2011, 13:56

Динамические параметры printf()
Есть код printf(&quot;%5s &lt;-- %14s\n&quot;, buffer0.c_str(), &quot;n/a&quot;); Что делать если я не знаю на этапе компиляции числа 5 и 14? Для...

Форматы и параметры printf/scanf
Задали вопрос что если в выводе : 1) форматов&gt;переменных 2)переменных&gt;форматов Я делал программки и смотрел что получается,но не...

Как припаять PLS на самодельную плату
Возник вопрос: как припаять PLS разъём на самодельную плату? Примерно как здесь ...

Не могу понять как исправить ошибку Warning: printf() [function.printf]: Too few arguments in Z:\home\ksards.ru\www\id\1.php on line 76
Помогите связать бд с сайтом я новичок в этом вот код php &lt;?php do { printf(&quot;&lt;div class='blog'&gt;&lt;a...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru