Нескольно простых вопросов о программировании AVR на Си.
- VladislavS
- Собутыльник Кота
- Сообщения: 2562
- Зарегистрирован: Вт май 01, 2018 19:44:47
Re: Нескольно простых вопросов о программировании AVR на Си.
[uquote="KorbenDallas",url="/forum/viewtopic.php?p=4313039#p4313039"]В этом нет ничего нового.[/uquote]А должно быть? Просто возможностей С++ не достаточно?
[uquote="KorbenDallas",url="/forum/viewtopic.php?p=4313039#p4313039"]Это лишь способа легко "штамповать" функции по второму пункту, точно так же их можно "штамповать" при помощи макросов в С.[/uquote]Как создатель языка (уж не знаю Керниган вы или Ритчи), должны знать, что это совсем не так.
[uquote="KorbenDallas",url="/forum/viewtopic.php?p=4313039#p4313039"]Это лишь способа легко "штамповать" функции по второму пункту, точно так же их можно "штамповать" при помощи макросов в С.[/uquote]Как создатель языка (уж не знаю Керниган вы или Ритчи), должны знать, что это совсем не так.
- Реклама
Re: Нескольно простых вопросов о программировании AVR на Си.
Ну дак автор С++ - некто Страуструпп, поэтому господин "Керниган" конечно же не в полной мере знает особенности С++
Макросы и условная компиляция в Си - статична (имею ввиду невозможность изменять условия компиляции во время процесса компиляции). Шаблоны же - это аналог switch-case, только выполняемый во время компиляции, а не во время исполнения кода.
Макросы и условная компиляция в Си - статична (имею ввиду невозможность изменять условия компиляции во время процесса компиляции). Шаблоны же - это аналог switch-case, только выполняемый во время компиляции, а не во время исполнения кода.
- KorbenDallas
- Встал на лапы
- Сообщения: 93
- Зарегистрирован: Пн окт 31, 2016 06:23:19
Re: Нескольно простых вопросов о программировании AVR на Си.
[uquote="MLX90640",url="/forum/viewtopic.php?p=4313266#p4313266"]Ну дак автор С++ - некто Страуструпп,[/uquote]
Рабочая группа WG21 удивленно переглянулась. Точнее, переглянулась бы, если бы узнала, что некто MLX90640 на каком-то форуме назвал автором С++ Страуструппа... ("пп", сириоузли?)
(Зрителям: что-то, я смотрю, тут на форуме что ни пост - так повод удивленно переглянуться. Участников форума можно на улице узнавать по перманентно удивленной мине на физиономии?)
[uquote="MLX90640",url="/forum/viewtopic.php?p=4313266#p4313266"]поэтому господин "Керниган" конечно же не в полной мере знает особенности С++
[/uquote]
Котик мой, когда вы будете "не в полной мере знать особенности С++" так, как "не в полной мере" знаю их я...
[uquote="MLX90640",url="/forum/viewtopic.php?p=4313266#p4313266"]Макросы и условная компиляция в Си - статична (имею ввиду невозможность изменять условия компиляции во время процесса компиляции). Шаблоны же - это аналог switch-case, только выполняемый во время компиляции, а не во время исполнения кода.[/uquote]
Лол! "Как два раза сказать одно и то же, но при этом напихать в сказанное лишних слов и оборотов, что не сразу было очевидно, что два раза сказано одно и то же".
Нет. Оба процесса соврешенно одинаково "статичны".
Нет никакой разницы между "генерацией" функций через макросы в С или шаблоны в С++, кроме того, что в С такую генерацию нужно выполнять явно, а в С++ ее можно выполнять как явно, так и неявно. Хотя даже и в "неявном" случае в С++ шаблоны сами по себе не инстанцируются. Триггером инстанцирования шаблона все равно всегда являются явные действия пользователя, напр. использование имени шаблона функции с оператором вызова функции и конкретными типами аргументов.
С++, конечно, предоставляет такие средства как, например, явная специализация шаблонов, которые трудно или невозможно эмулировать через макросы языка С, но это никак не относится к рассматриваемой теме.
Рабочая группа WG21 удивленно переглянулась. Точнее, переглянулась бы, если бы узнала, что некто MLX90640 на каком-то форуме назвал автором С++ Страуструппа... ("пп", сириоузли?)
(Зрителям: что-то, я смотрю, тут на форуме что ни пост - так повод удивленно переглянуться. Участников форума можно на улице узнавать по перманентно удивленной мине на физиономии?)
[uquote="MLX90640",url="/forum/viewtopic.php?p=4313266#p4313266"]поэтому господин "Керниган" конечно же не в полной мере знает особенности С++
Котик мой, когда вы будете "не в полной мере знать особенности С++" так, как "не в полной мере" знаю их я...
[uquote="MLX90640",url="/forum/viewtopic.php?p=4313266#p4313266"]Макросы и условная компиляция в Си - статична (имею ввиду невозможность изменять условия компиляции во время процесса компиляции). Шаблоны же - это аналог switch-case, только выполняемый во время компиляции, а не во время исполнения кода.[/uquote]
Лол! "Как два раза сказать одно и то же, но при этом напихать в сказанное лишних слов и оборотов, что не сразу было очевидно, что два раза сказано одно и то же".
Нет. Оба процесса соврешенно одинаково "статичны".
Нет никакой разницы между "генерацией" функций через макросы в С или шаблоны в С++, кроме того, что в С такую генерацию нужно выполнять явно, а в С++ ее можно выполнять как явно, так и неявно. Хотя даже и в "неявном" случае в С++ шаблоны сами по себе не инстанцируются. Триггером инстанцирования шаблона все равно всегда являются явные действия пользователя, напр. использование имени шаблона функции с оператором вызова функции и конкретными типами аргументов.
С++, конечно, предоставляет такие средства как, например, явная специализация шаблонов, которые трудно или невозможно эмулировать через макросы языка С, но это никак не относится к рассматриваемой теме.
Re: Нескольно простых вопросов о программировании AVR на Си.
Уууу, а случаем, г-н KorbenDallas не является ли родоначальником и С++ тоже, да и вообще, всего сущего на свете, то бишь, богом?
А то чето начал распространяться смрад "божественного духа". Интересно, как давно у него продолжаются такие фантазии? хехе
- KorbenDallas
- Встал на лапы
- Сообщения: 93
- Зарегистрирован: Пн окт 31, 2016 06:23:19
Re: Нескольно простых вопросов о программировании AVR на Си.
Я смотрю, тут наблюдается ярко выраженный дефицит богов. Каждому встречному и поперечному внезапно предлагают занять вакантное место... "Оставайтесь! Будете Гениальным Механиком Планеты!" (с)
Сорян, котаны... Я бы и сам не прочь, но занят уж больно. Не уговаривайте, чесслово не могу.
Сорян, котаны... Я бы и сам не прочь, но занят уж больно. Не уговаривайте, чесслово не могу.
- Реклама
Re: Нескольно простых вопросов о программировании AVR на Си.
Вы уж определитесь как-нить со своим статусом, иль таблеточки от расстройства личности выпейте, а то неудобно как-то получается, когда говорите, что:
[uquote="KorbenDallas",url="/forum/viewtopic.php?p=4313005#p4313005"]Я - один из "создателей языка"
Я, правда, один из "создателей языка" С, а не языка С++, но именно в этом качестве в свое время принимал участие в работе С++ комитета.[/uquote]
[uquote="KorbenDallas",url="/forum/viewtopic.php?p=4313005#p4313005"]Я - один из "создателей языка"
- KorbenDallas
- Встал на лапы
- Сообщения: 93
- Зарегистрирован: Пн окт 31, 2016 06:23:19
Re: Нескольно простых вопросов о программировании AVR на Си.
Ого! Это ж в какой дремучей, беспросветной, темной и сырой подвальной отдушине ютятся эти четверолапые, народ, если бывший участник WG14, отец сишной демократии в их глазах лучезарит божественным сиянием.
Хотя манера мыслить в терминах "таблеточек", как правило указывает на то, что сырая и темная отдушина тут располагается исключительно между ушами, а душит их не лучи чьего-либо сияния, а банальная хвостодраная зависть
Хотя манера мыслить в терминах "таблеточек", как правило указывает на то, что сырая и темная отдушина тут располагается исключительно между ушами, а душит их не лучи чьего-либо сияния, а банальная хвостодраная зависть
Re: Нескольно простых вопросов о программировании AVR на Си.
Ага, только штош вы, о Великий и Всемогучий, тут то, среди нас, смертных, делаете?
"Участник одного, отец другого, создатель третьего". Какие титулы себе еще напишите? А таблеточки то пейте, пейте
а то лопните от себявосхваления.
Re: Нескольно простых вопросов о программировании AVR на Си.
О! Схлеснулись! Запасаюсь пивом и буду смотреть. Тут уж не до Сишных плюсов 
Да боюсь, модератор унасекомит этот дискусс в тематическом разделе.
Да боюсь, модератор унасекомит этот дискусс в тематическом разделе.
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18561
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: Нескольно простых вопросов о программировании AVR на Си.
а я бы от отца послушал про тип данных void...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
Re: Нескольно простых вопросов о программировании AVR на Си.
Да, вот как "атец" мог придумать void (пустой), который в реале имеет размерность 1 байт. Указатель на void* указывает на нечто размером 1 байт.
Но зато под void* при передаче его в параметрах ф-ции можно подложить любой тип, даже структуру с кучей элементов, а затем явным образом привести void* к требуемому типу, как раз благодаря тому, что void* имеет размер 1 байт.
Но зато под void* при передаче его в параметрах ф-ции можно подложить любой тип, даже структуру с кучей элементов, а затем явным образом привести void* к требуемому типу, как раз благодаря тому, что void* имеет размер 1 байт.
- KorbenDallas
- Встал на лапы
- Сообщения: 93
- Зарегистрирован: Пн окт 31, 2016 06:23:19
Re: Нескольно простых вопросов о программировании AVR на Си.
[uquote="MLX90640",url="/forum/viewtopic.php?p=4313565#p4313565"]Ага, только штош вы, о Великий и Всемогучий, тут то, среди нас, смертных, делаете?
"Участник одного, отец другого, создатель третьего". Какие титулы себе еще напишите?[/uquote]
Видите, народ: воспаление началось - и затем разрастается как плесень на штукатурке, только быстрее. Титулы придумываются, великость с всемогуществом...
Разумеется, вы все сразу педантично отметили хрестоматийные симптомы "комплекса плебея": индивидуум настолько глубоко считает сам себя куском коровьей лепешки, настолько уверен в том, что с ним рядом в поле никто даже "до ветру" не сядет, что появление где-то поблизости с ним в форуме по С и С++ (!) одного из авторов спецификации языка - явление, кстати, само по себе ничем не примечательное - им воспринимается как пришествие Великого и Всемогущего, как прикосновение к Богу. Всё - его слова.
Я уверен, что вы все это наблюдали не раз, но меня, признаюсь честно, это всегда шокирует: насколько же глубоко в некоторых людях укоренилась дегенеративная манера считать самих себя некоей недоразвитой одноклеточной слизью, что даже самая элементарная компетентность других людей, даже элементарное владение таблицей умножения вызывает у них реакцию в стиле "Ах, ты оказывается реинкарнация самого Пифагора! Что же ты, Великий, делаешь среди нас, недостойных?".
Упоминание "таблеточек" тут вполне уместно и тоже говорит о многом...
---
Компактность, плотность и концентрация информации в болтовне о `void` зашкаливает
1. "void (пустой), который в реале имеет размерность 1 байт" - одна эта фраза содержит в себе описание жизненного пути длиною в боль.
В слегка разбавленной живительной влагой и развернутой форме это выглядит примерно так: "В С и С++ не смыслит вообще ничего, но "лабал на GCC", свято веря, что это заменяет. Как это обычно и бывает с подобными дворовыми самоучками, из GCC поднабрался дерьмеца, но тогда не понимал этого, ибо круг общения состоял из таких же самоучек-потребителей той же жижи. В один прекрасный момент попал в Интернет, где ему детально и довольно жестко кое-что объяснили, то есть посветили фонариком знания в смрад закостенелых домыслов. После третьей-четвертой засветки пришло осознание, вспыхнули зачатки понимания, а с ними вспыхнула и боль. Мучительная - за бесцельно прожитые годы. Боль, из-за которой 1% подобных индивидуумов "убивается головой апстену", 5% берутся за ум и худо-бедно восстанавливают человеческий образ, а оставшиеся 93.999996% уходят в стадию отрицания, проявляющуюся в том числе в периодических выбросах вроде "void (пустой), который в реале имеет размерность 1 байт".
2. "благодаря тому, что void* имеет размер 1 байт." - из каких Упанишад взят этот бред даже я с высоты своего сияющего всемогущества понять не смог
Видите, народ: воспаление началось - и затем разрастается как плесень на штукатурке, только быстрее. Титулы придумываются, великость с всемогуществом...
Разумеется, вы все сразу педантично отметили хрестоматийные симптомы "комплекса плебея": индивидуум настолько глубоко считает сам себя куском коровьей лепешки, настолько уверен в том, что с ним рядом в поле никто даже "до ветру" не сядет, что появление где-то поблизости с ним в форуме по С и С++ (!) одного из авторов спецификации языка - явление, кстати, само по себе ничем не примечательное - им воспринимается как пришествие Великого и Всемогущего, как прикосновение к Богу. Всё - его слова.
Я уверен, что вы все это наблюдали не раз, но меня, признаюсь честно, это всегда шокирует: насколько же глубоко в некоторых людях укоренилась дегенеративная манера считать самих себя некоей недоразвитой одноклеточной слизью, что даже самая элементарная компетентность других людей, даже элементарное владение таблицей умножения вызывает у них реакцию в стиле "Ах, ты оказывается реинкарнация самого Пифагора! Что же ты, Великий, делаешь среди нас, недостойных?".
Упоминание "таблеточек" тут вполне уместно и тоже говорит о многом...
---
Компактность, плотность и концентрация информации в болтовне о `void` зашкаливает
1. "void (пустой), который в реале имеет размерность 1 байт" - одна эта фраза содержит в себе описание жизненного пути длиною в боль.
В слегка разбавленной живительной влагой и развернутой форме это выглядит примерно так: "В С и С++ не смыслит вообще ничего, но "лабал на GCC", свято веря, что это заменяет. Как это обычно и бывает с подобными дворовыми самоучками, из GCC поднабрался дерьмеца, но тогда не понимал этого, ибо круг общения состоял из таких же самоучек-потребителей той же жижи. В один прекрасный момент попал в Интернет, где ему детально и довольно жестко кое-что объяснили, то есть посветили фонариком знания в смрад закостенелых домыслов. После третьей-четвертой засветки пришло осознание, вспыхнули зачатки понимания, а с ними вспыхнула и боль. Мучительная - за бесцельно прожитые годы. Боль, из-за которой 1% подобных индивидуумов "убивается головой апстену", 5% берутся за ум и худо-бедно восстанавливают человеческий образ, а оставшиеся 93.999996% уходят в стадию отрицания, проявляющуюся в том числе в периодических выбросах вроде "void (пустой), который в реале имеет размерность 1 байт".
2. "благодаря тому, что void* имеет размер 1 байт." - из каких Упанишад взят этот бред даже я с высоты своего сияющего всемогущества понять не смог
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18561
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: Нескольно простых вопросов о программировании AVR на Си.
слабовато для отца...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- KorbenDallas
- Встал на лапы
- Сообщения: 93
- Зарегистрирован: Пн окт 31, 2016 06:23:19
Re: Нескольно простых вопросов о программировании AVR на Си.
Это не для отца, котятки вы мои пушистые шерстятки, совсем не для отца. Это - для нашего заблудшего сына. Вот прям сейчас как вижу: хорошо зашло, вставило ему так, что аж в звенящую струну вытянуло от носа и до кончика хвоста, словно багет целиком зохавал. Его сейчас такого мягко держит на своих лапах всепоглощающий и всепрощающий, безразмерный и бездонный void...
Не волнуйтесь, он вернется к нам. Надеюсь поумневшим.
Не волнуйтесь, он вернется к нам. Надеюсь поумневшим.
Re: Нескольно простых вопросов о программировании AVR на Си.
Да, слабовато для "создателя языка"
Нифпичатлило! ЧСВ распирает, букв дохрена, а реально по делу - нихрена. Так что этот господин - никакой не "создатель языка", а так, просто хвастун и болтун.
Я имел ввиду, что указывает void* на первый байт любого массива, структуры или типа, и минимальный размер шага (инкремента) указателя void* - 1 байт. В отличие от этого, инкремент указателя не-void* равен размеру типа, на который он указывает.

Понятное дело, что переменная, хранящая адрес void*, будет равна принятой [размерности для любого другого адреса переменной]. Для 32-битной разрядности адрес хранится в 4 байтах.
[uquote="KorbenDallas",url="/forum/viewtopic.php?p=4314027#p4314027"]появление где-то поблизости с ним в форуме по С и С++ (!) одного из авторов спецификации языка -)[/uquote]
Интернет тем и хорош, что можно выдавать себя хоть за наследного принца королевства орков, один фик - всем пофик. Этот "атец" - просто обычный чел, начитавшийся инфы и вдруг придумавший, что оказывается именно он-то и создал этот язык! Ну а че, инет всё стерпит. Потому и отношение к нему такое насмешливое, типа "о, какие тут люди, ай-ай, да как же нам тут повезло". Хотя конечно же это просто сарказм.
Я имел ввиду, что указывает void* на первый байт любого массива, структуры или типа, и минимальный размер шага (инкремента) указателя void* - 1 байт. В отличие от этого, инкремент указателя не-void* равен размеру типа, на который он указывает.
Понятное дело, что переменная, хранящая адрес void*, будет равна принятой [размерности для любого другого адреса переменной]. Для 32-битной разрядности адрес хранится в 4 байтах.
[uquote="KorbenDallas",url="/forum/viewtopic.php?p=4314027#p4314027"]появление где-то поблизости с ним в форуме по С и С++ (!) одного из авторов спецификации языка -)[/uquote]
Интернет тем и хорош, что можно выдавать себя хоть за наследного принца королевства орков, один фик - всем пофик. Этот "атец" - просто обычный чел, начитавшийся инфы и вдруг придумавший, что оказывается именно он-то и создал этот язык! Ну а че, инет всё стерпит. Потому и отношение к нему такое насмешливое, типа "о, какие тут люди, ай-ай, да как же нам тут повезло". Хотя конечно же это просто сарказм.
Последний раз редактировалось MLX90640 Чт ноя 03, 2022 07:56:59, всего редактировалось 2 раза.
- VladislavS
- Собутыльник Кота
- Сообщения: 2562
- Зарегистрирован: Вт май 01, 2018 19:44:47
Re: Нескольно простых вопросов о программировании AVR на Си.
А для 8-битной AVR?
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18561
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: Нескольно простых вопросов о программировании AVR на Си.
да, собственно, меня больше интересует мнение отца о том, насколько логичен тип данных (void это же тип данных?!), для которого нельзя создать переменную? а следом вопрос о том, как отец допустил, что Си - это язык с диким количеством противоречий, решаемых костылями типа "а возьмем и пропишем в стандарте, сделав из костыля или полной дичи норму".
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- VladislavS
- Собутыльник Кота
- Сообщения: 2562
- Зарегистрирован: Вт май 01, 2018 19:44:47
Re: Нескольно простых вопросов о программировании AVR на Си.
[uquote="MLX90640",url="/forum/viewtopic.php?p=4314081#p4314081"]Понятное дело, что переменная, хранящая адрес void*, будет равна принятой [размерности для любого другого адреса переменной].[/uquote]Давай сделаем третью попытку и заглянем таки в стандарт
A pointer to void shall have the same representation and alignment requirements as a pointer to a character type.
Re: Нескольно простых вопросов о программировании AVR на Си.
А давай лучше сделаешь попытку осознать, как именно хранится адрес



