|
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
|
|
Как перенести параметры из ф-ции printf() в самодельную04.06.2011, 09:22. Показов 25364. Ответов 104
Метки нет (Все метки)
Ребят, подскажите как решить задачу.
Нужно перенести параметры функции printf() в самодельную ф-цию myfunk(). При условии если булева переменная Х==1. Если не равна 1, то не переносить. Задача осложняется тем, что число параметров ф-ции может быть переменным. Подскажите пожалуйста, буду очень признателен.
0
|
|
| 04.06.2011, 09:22 | |
|
Ответы с готовыми решениями:
104
Как перенести параметры с XP на 7
Параметры printf |
|
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
|
||||||
| 05.06.2011, 14:08 [ТС] | ||||||
|
Гыыыыы.
Попробовал и так сделать, в итоге оказалось что при инициализации переменной "с" int не нужен:
Ну в принципе теперь компилится нормально, пару замечаний есть(warnings). Но я конечно и по убирал не мало кода, в основном некоторые циклы if, где ругался. Щас довести до ума осталось.
0
|
||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 05.06.2011, 14:09 | |
|
Uklunok, во-первых, зачем в этом фрагменте вообще нужна строка #3?
Во-вторых, в языке С, если у параметров и возвращаемого значения функции опущены аннотации типов, то считается, что тип - int.
0
|
|
|
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
|
|||||||||||||
| 05.06.2011, 14:22 [ТС] | |||||||||||||
|
Ого себе. Этот компилятор оказывается сохранил весь код в ассемблере, поместил его в папку debug, исходный код на Си весит 6,8кБ, а этот на ассемблере 70кБ))
Добавлено через 3 минуты Добавлено через 4 минуты Мистика какая-та. Сделал так:
Добавлено через 2 минуты Может вобще так оставить?:
0
|
|||||||||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||
| 05.06.2011, 14:29 | ||
|
Uklunok, extern my_putchar - это прототип (объявление интерфейса) функции my_putchar, которая должна быть определена где-то в другой единице трансляции. my_putchar - прототип функции, которая определяется в текущей единице трансляции. Так как эта функция нигде не вызывается, то сам факт, что она не определена, к ошибкам не приводит.
0
|
||
|
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
|
|
| 05.06.2011, 14:49 [ТС] | |
|
else (void)putchar(c); - эту тоже убрать?
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 05.06.2011, 14:51 | |
|
Uklunok, а вот это уже убирать не надо
0
|
|
|
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
|
|
| 05.06.2011, 14:54 [ТС] | |
|
Ещё ругается на эту строку:
if (*format == '%') goto out; я её убрал
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||
| 05.06.2011, 14:57 | ||
|
Uklunok, что именно говорит?
Добавлено через 1 минуту
0
|
||
|
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
|
|||||||||||||||||||||
| 05.06.2011, 15:21 [ТС] | |||||||||||||||||||||
|
дак у меня комилятор виснет.
Тут такая штука получается:
Ни какой ошибки не выдаёт, просто виснет компилятор(( Добавлено через 4 минуты Хотя в самом исходнике для МК есть такие строки:
Добавлено через 2 минуты Всё разобрался, тут имя out такое у метки и у переменной одно и тоже. сделал так: if (*format == '%') goto out1; //дальше ещё if-ы else { out1: printchar (out, *format); ++pc; } Добавлено через 9 минут А как быть с параметром %p:
Добавлено через 17 секунд А как быть с параметром %p:
0
|
|||||||||||||||||||||
|
|
|||||||
| 05.06.2011, 15:55 | |||||||
|
Добавлено через 1 минуту Добавлено через 5 минут
0
|
|||||||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||
| 05.06.2011, 15:56 | ||
|
0
|
||
|
1069 / 848 / 60
Регистрация: 30.04.2011
Сообщений: 1,659
|
||
| 05.06.2011, 16:00 | ||
|
А было бы действительно интересно посмотреть... ![]() Хотя навскидку - только преобразования типов указателей претендуют на специфику архитектуры. Остальное - вполне стандартный С++... Хотя на 64-битной - весьма вероятны проблемы. Но написано это было еще в 2003 году...
0
|
||
|
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
|
|
| 05.06.2011, 16:02 [ТС] | |
|
Нет, на "v" ничего не начинается. Только
va_start(ap, v) (ap = (va_list) & v + sizeof(v)) va_arg(ap, t) (*(t *) ((ap += sizeof(int)) - sizeof(int))) va_end(ap) (ap = (va_list) 0) Как господин Nameless One, сказал сделать, вроде должно работать, ведь проверяться будет на железе
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||
| 05.06.2011, 16:03 | ||
|
0
|
||
|
|
||||
| 05.06.2011, 16:06 | ||||
|
Добавлено через 2 минуты
0
|
||||
|
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
|
||
| 05.06.2011, 16:11 [ТС] | ||
|
0
|
||
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||
| 05.06.2011, 16:15 | ||
|
0
|
||
|
3 / 3 / 0
Регистрация: 08.05.2010
Сообщений: 135
|
|
| 05.06.2011, 17:05 [ТС] | |
|
Ну дак я ведь ещё и в билдере проверил. Перенёс код, скомпилировал и работает. Правда компилятор для ftdi выдал 4 warning-a, ну это не беда думаю...
Добавлено через 56 секунд А что за тесты?
0
|
|
|
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
|
| 05.06.2011, 17:07 | |
|
Uklunok, программа, которая будет вызывать твою функцию (работоспособность которой нужно проверить) с различными аргументами, чтобы выяснить, правильно ли работает эта функция.
0
|
|
| 05.06.2011, 17:07 | |
|
Как припаять PLS на самодельную плату Не могу понять как исправить ошибку Warning: printf() [function.printf]: Too few arguments in Z:\home\ksards.ru\www\id\1.php on line 76 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 12. краткий список проверок модели перед запуском.
anaschu 27.06.2026
Скрытые отказы в моделях систем динамики (SD-models) экологических систем: два случая из практики
Контекст
Разбирался прототип модели систем динамики (SD-модели) микоризной сукцессии: пять. . .
|
Сукцессия 11. Проверка орудий перед войной: разработка через тестирование
anaschu 27.06.2026
Как не дать модели соврать самой себе: проверки для симуляции микоризной сукцессии
Введение
Когда вы строите математическую модель живой системы — грибов, растений, почвы — главная опасность. . .
|
10 сукцессия. Питон код войны грибов и растений
anaschu 27.06.2026
import numpy as np
class PlantAgent:
def __init__(self, name, strategy, initial_biomass):
self. name = name
self. strategy = strategy # "greedy" (широколиственные) или. . .
|
сукцессия 9. Математика подлости: как растения предали грибных друзей
anaschu 27.06.2026
Статья 2. Глобальная фосфорная война: эволюционно-экономические механизмы распределения биомов Земли
Введение: Экологический рынок как игра с нулевой суммой
Традиционная экология долгое время. . .
|
|
сукцессия 8. Как я спорил с ИИ, которые - агенты растений и ненавистники грибов!
anaschu 27.06.2026
Статья 1. Хроники грибного восстания: как Сократов диалог разрушил академические догмы ИИ
Введение: Синдром «цифрового учебника»
Современные большие языковые модели (LLM) обладают колоссальным. . .
|
Главный вопрос моделирования сукцессии
anaschu 27.06.2026
главный вопрос.
Если эктомикориза лучше добывает недоступный фосфор. И ее масса максимальна из всех.
А широколиственный лес тоже имеет самую крутую биомассу.
То почему не возникло их симбиоза? Это. . .
|
сукцессия 6. Питон реализация энилоджиковской модели, картинка про Центральную часть будущей модели
anaschu 26.06.2026
Етить. ИИ мне на основе моего старого файла R создал вот эту вот хмерь на пайтоне.
Это уже новая модель, модель сукцессии грибной.
потоки фосфора, азота. Углерода.
5 видов организмов.
Я даже. . .
|
Как замкнутый ядерный цикл решит проблему недостатки фосфора? Био миграция фосфора со дна океана
anaschu 26.06.2026
Биологический лифт: Концепция подъема фосфора со дна океана с помощью ЗЯТЦ
Предлагаю на обсуждение альтернативу тяжелому промышленному бурению океанического дна. Вместо сложной инженерии мы можем. . .
|