Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 11.11.2017, 15:31  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,842
Сказал спасибо: 2,531
Сказали Спасибо 11,764 раз(а) в 5,895 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Функция вывода на lcd и глобальные переменные

Не, ну если использовать динамическое выделение памяти... Однако, это не для контроллеров. Я, по крайней мере, этим еще не страдал.
Реклама:
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 11.11.2017, 16:05  
supercelt
Прописка
 
Регистрация: 29.03.2007
Сообщений: 185
Сказал спасибо: 11
Сказали Спасибо 1 раз в 1 сообщении
supercelt на пути к лучшему
По умолчанию Re: Функция вывода на lcd и глобальные переменные

Сообщение от akegor Посмотреть сообщение
Не, ну если использовать динамическое выделение памяти... Однако, это не для контроллеров. Я, по крайней мере, этим еще не страдал.
В этом смысле?
Код:
char f[]="";
supercelt вне форума  
Непрочитано 11.11.2017, 16:21  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,842
Сказал спасибо: 2,531
Сказали Спасибо 11,764 раз(а) в 5,895 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Функция вывода на lcd и глобальные переменные

Сообщение от supercelt Посмотреть сообщение
В этом смысле?
В этом.
Пока не видел нужды. Даже для ББ.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 11.11.2017, 16:50  
Serg3301
Вид на жительство
 
Регистрация: 03.10.2011
Сообщений: 485
Сказал спасибо: 35
Сказали Спасибо 234 раз(а) в 138 сообщении(ях)
Serg3301 на пути к лучшему
По умолчанию Re: Функция вывода на lcd и глобальные переменные

А причём тут динамическое выделение памяти? Выделяйте её любым удобным вам способом и передавайте в функцию указатель на эту память, а функция будет заполнять её используя переданный указатель. так-же как например strcpy().
Serg3301 вне форума  
Непрочитано 11.11.2017, 18:47  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,842
Сказал спасибо: 2,531
Сказали Спасибо 11,764 раз(а) в 5,895 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Функция вывода на lcd и глобальные переменные

Сообщение от Serg3301 Посмотреть сообщение
А при чём
При том, разговор о передаче указателя на память ИЗ функции. Если функция, при наличии большой нужды, запросила и чой-то тудыть поместила, она может вернуть указатель. В принципе...
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 12.11.2017, 01:03  
Serg3301
Вид на жительство
 
Регистрация: 03.10.2011
Сообщений: 485
Сказал спасибо: 35
Сказали Спасибо 234 раз(а) в 138 сообщении(ях)
Serg3301 на пути к лучшему
По умолчанию Re: Функция вывода на lcd и глобальные переменные

Сообщение от akegor Посмотреть сообщение
При том, разговор о передаче указателя на память ИЗ функции.
А кто мешает функции вернуть переданный ей указатель? Опять привести в пример strcpy()?
Serg3301 вне форума  
Непрочитано 12.11.2017, 01:29  
jogick
Временная регистрация
 
Регистрация: 10.02.2007
Адрес: Default city
Сообщений: 65
Сказал спасибо: 3
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
jogick на пути к лучшему
По умолчанию Re: Функция вывода на lcd и глобальные переменные

В таких случаях, как у ТС, лично я внутри функции объявляю static массив и возвращаю из функции указатель на него. Во первых, это позволяет поместить такую функцию в библиотеку и присоединять к разным проектам, без привязки к именам глобальных переменных в других проектах. Во вторых, если этот массив нужен в других функциях он просто передаётся туда указателем.
Проще подружиться с указателями, чем использовать глобальные переменные.
jogick вне форума  
Непрочитано 12.11.2017, 01:39  
STM32F0
Заблокирован
 
Регистрация: 22.04.2014
Сообщений: 0
Сказал спасибо: 15
Сказали Спасибо 366 раз(а) в 284 сообщении(ях)
STM32F0 на пути к лучшему
По умолчанию Re: Функция вывода на lcd и глобальные переменные

Сообщение от jogick Посмотреть сообщение
Проще подружиться с указателями, чем использовать глобальные переменные.
Надуманно. А проще ли?
STM32F0 вне форума  
Непрочитано 12.11.2017, 01:47  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,842
Сказал спасибо: 2,531
Сказали Спасибо 11,764 раз(а) в 5,895 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: Функция вывода на lcd и глобальные переменные

Сообщение от STM32F0 Посмотреть сообщение
А проще ли?
Неоднозначно. Бывает проще, а бывает - лишняя головная боль. В общем, инструмент под соответствующую задачу. Без фанатизма.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 12.11.2017, 03:02  
mike-y-k
Модератор
 
Регистрация: 04.08.2010
Адрес: Москва СЗАО
Сообщений: 11,246
Сказал спасибо: 11,165
Сказали Спасибо 3,854 раз(а) в 2,925 сообщении(ях)
mike-y-k на пути к лучшему
По умолчанию Re: Функция вывода на lcd и глобальные переменные

jogick, а использовать для библиотечного модуля макроподстановку? .h всегда будет присутствовать.
А там уже и подстановку того глобального имени в конкретном проекте.
Если ещё подумать - так можно и универсальный вариант с глобальной переменной или передачей через указатель сделать.

supercelt, таки ("дабы не было мучительно больно") лучше потратить время на проектирование и тогда все вопросы этой темы отпадут сами собой.
Использование глобальных переменных экономит на коде и времени выполнения.
Другие варианты более универсальны - например при использовании одной функции в разных ситуациях/с разными данными. Хотя тут тоже может использоваться глобальная(ые) переменная(ые) с указателем.
Конкретика от многих факторов зависит, основной из которых Ваш алгоритм.
__________________
rtfm forever должно быть основой для каждого. Альтернатива грустна, поскольку метод слепого щенка успешно работает при весьма малом числе вариантов…

Последний раз редактировалось mike-y-k; 12.11.2017 в 03:05.
mike-y-k вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ускорить компьютер 7Fantomas7 Ремонт оргтехники 111 08.08.2018 05:27
PIC16F876a+Nokia 5110 LCD+PICKit2 AndGrig PIC 31 02.11.2016 09:18
ЖКИ и CodeVision: 8-ми битный режим vikpol Микроконтроллеры, АЦП, память и т.д 33 09.03.2009 21:55
На чём написано ??? Koka Proteus, KiCAD и другие ECAD 18 08.10.2006 15:50
Не могу разобраться с LCD init_sub Информация по радиокомпонентам 6 02.04.2004 04:40


Часовой пояс GMT +4, время: 09:54.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot