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

 
 
6 страниц V  « < 3 4 5 6 >  
Reply to this topicStart new topic
> структуры в С, копирование в байтовый массив
Сергей Борщ
сообщение Apr 29 2007, 18:02
Сообщение #61


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Ладно, я еще поприкалываюсь
Цитата(lks @ Apr 29 2007, 14:49) *
Могут, могут. А память где для них брать?
Там же, где вы собираетесь брать ее для байтового массива. Или вы думаете, что байтовый массив занимает меньше места чем структура такого же размера? cranky.gif
Цитата(lks @ Apr 29 2007, 14:49) *
Чтобы загрузить структуру предлагаете memcpy, а место в памяти пргограмм где взять?
"Есть у нас студент, фамилия у него Горидзе, зовут его Авас, а доцент тупой". Переведите термин "загрузить структуру". zltigo предлагает использовать memcpy для КОПИРОВАНИЯ СОДЕРЖИМОГО СТРУКТУРЫ В БАЙТОВЫЙ МАССИВ, что собственно и спрашивалось в первом вопросе.
Цитата(lks @ Apr 29 2007, 14:49) *
Меня этот путь не устраивает.
Я месяца полтора назад в Keil-е все это уже попробовал.
Структура у меня заполняется данными замечательно из буфера по указателю, но только когда я указывал на переменную внутри структуры. Это понятно?
Если вы не умеете что-либо делать, то это не значит что это сделать невозможно и не нужно.
Цитата(lks @ Apr 29 2007, 14:49) *
Пример:
struct S{...}s;
struct S* ps;
ps=&s;
не работатет, хотя должен.
Работает, как и должен.
Код
    47          struct S{
     48              uint8_t i;

   \                                 In segment NEAR_Z, align 1, keep-with-next
   \   00000000                      REQUIRE `?<Segment init: NEAR_Z>`
     49          }s;
     50          struct S* ps;
   \                     ps:
   \   00000000                      DS 2
   \                     s:
   \   00000002                      DS 1

   \                                 In segment CODE, align 2, keep-with-next
     51          void Test()
   \                     ??Test:
     52          {
     53              ps = &s;
   \   00000000   ....               LDI     R16, LOW((ps + 2))
   \   00000002   ....               LDI     R17, (ps + 2) >> 8
   \   00000004   ....               LDI     R30, LOW(ps)
   \   00000006   ....               LDI     R31, (ps) >> 8
   \   00000008   8300               ST      Z, R16
   \   0000000A   8311               STD     Z+1, R17
     54              ps->i = 2;
   \   0000000C   E002               LDI     R16, 2
   \   0000000E   8302               STD     Z+2, R16
     55          }
   \   00000010   9508               RET
Цитата(lks @ Apr 29 2007, 14:49) *
Я действительно программы пишу много и давно, только я не преподаватель информатики, я реальные вещи делаю, на реальном "железе". Общетеоретические иссенуации меня не интересуют.
Прекрасно. Продолжайте вещи делать, только не лезьте теоретизировать о вещах, в которых понятия не имеете. Это уже не первое обсуждение, где вам указывают на ваше невежество.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
lks
сообщение Apr 29 2007, 19:24
Сообщение #62


Местный
***

Группа: Новичок
Сообщений: 493
Регистрация: 18-06-06
Пользователь №: 18 143



Цитата(Сергей Борщ @ Apr 29 2007, 19:02) *
Ладно, я еще поприкалываюсь


В чем прикол то?
Что тоже педагог?
Откуда вас тут столько набежало?
Педагоги-теоретики достали своей тупостью!


Цитата(Сергей Борщ @ Apr 29 2007, 19:02) *
Продолжайте вещи делать, только не лезьте теоретизировать о вещах, в которых понятия не имеете. Это уже не первое обсуждение, где вам указывают на ваше невежество.


Мне постоянно пытаются разные умники (вроде вас) указывать на что нибудь!
Тут скопляется ужастное количество лингвистов всех мастей - понятия не имеющих о реальных вещах.
А еще других пытаются учить.
Найдут какой-нибудь учебник - мусолят его, мусолят...
А потом умное лицо начинают делать..
Других людей жизни учить...
Спросишь по теме что-нибудь - одни вопли в ответ - типа: "почему не по учебнику спросил".
Учебник я и сам могу прочитать.

По вопросу того индикатора ЖКИ (которым вы меня попрекаете) - мне влом было искать тогда для вас этот ДШ.
Вам он всеравно не нужен был.
Одна болтовня потому-что.
Go to the top of the page
 
+Quote Post
forever failure
сообщение Apr 29 2007, 19:35
Сообщение #63


Местный
***

Группа: Участник
Сообщений: 256
Регистрация: 6-03-05
Из: Екатеринбург
Пользователь №: 3 112



Неужели Дохтур Туамосес ?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Apr 29 2007, 19:36
Сообщение #64


Гуру
******

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



Цитата(lks @ Apr 29 2007, 19:24) *
Что тоже педагог?
Откуда вас тут столько набежало?
Педагоги-теоретики достали своей тупостью!
Мне постоянно пытаются разные умники (вроде вас) указывать на что нибудь!
Тут скопляется ужастное количество лингвистов всех мастей - понятия не имеющих о реальных вещах.
А еще других пытаются учить.
Найдут какой-нибудь учебник - мусолят его, мусолят...
А потом умное лицо начинают делать..
Других людей жизни учить...

Блеск! smile.gif Все слова которые знал - рассказал.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
lks
сообщение Apr 29 2007, 19:46
Сообщение #65


Местный
***

Группа: Новичок
Сообщений: 493
Регистрация: 18-06-06
Пользователь №: 18 143



Цитата(zltigo @ Apr 29 2007, 20:36) *
Блеск! smile.gif

Да нет, "блеск" был это когда вы предложили из буфера в структуру копировать данные с ипользованием библиотечной процедуры.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Apr 29 2007, 20:01
Сообщение #66


Гуру
******

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



Цитата(lks @ Apr 29 2007, 19:46) *
Да нет, "блеск" был это когда вы предложили из буфера в структуру копировать данные с ипользованием библиотечной процедуры.

Так, с явными преобразованием типов указателей в языке 'C' покончили - туды их в качель.
Ну ниасилил sad.gif соболезную.
Переходим к "практической" критике clib.
Чем библиотечные функции ("процедуры" в переводе smile.gif ) не угодили?
А memcpy() конкретно чем? Глючит? Тормозит?
А, наверное вообще не работает! Угадал?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Apr 29 2007, 21:03
Сообщение #67


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(lks @ Apr 29 2007, 19:24) *
В чем прикол то?
В том, как вы с пеной у рта несете чушь laugh.gif
Цитата(lks @ Apr 29 2007, 19:24) *
А еще других пытаются учить.
На ваших советах действительно можно учиться - как не надо делать. Продолжайте.
Цитата(lks @ Apr 29 2007, 19:24) *
Учебник я и сам могу прочитать.
А что же до сих пор не прочитали? biggrin.gif biggrin.gif biggrin.gif Или знакомых букв в нем мало?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
lks
сообщение Apr 29 2007, 21:31
Сообщение #68


Местный
***

Группа: Новичок
Сообщений: 493
Регистрация: 18-06-06
Пользователь №: 18 143



Цитата(Сергей Борщ @ Apr 29 2007, 22:03) *
В том, как вы с пеной у рта несете чушь laugh.gif На ваших советах действительно можно учиться - как не надо делать. Продолжайте.А что же до сих пор не прочитали? biggrin.gif biggrin.gif biggrin.gif Или знакомых букв в нем мало?


У моего знакомого, по месту работы - есть охранник, у него на столе стоит комп, а раньше он похоже окончил курсы "оператор ПЭВМ". С этого компа шарит по форумам - поднаторел в терминологии, если что не знает спросит в другом форуме или книжку почитает (наверное кто-то забыл в столе). Короче пишет много, авторитетом пользуюется немалым у молодежи - повышает свою "ущемленную" самооценку до уровня - действующего членкора РАН.
Крутой перец - одним словом. (жалко работатет только - два через день).
Go to the top of the page
 
+Quote Post
zltigo
сообщение Apr 29 2007, 21:41
Сообщение #69


Гуру
******

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



Цитата(lks @ Apr 29 2007, 21:31) *
книжку почитает (наверное кто-то забыл в столе)
.....
Крутой перец - одним словом. (жалко работатет только - два через день).

Ну это не страшно. Раз он сегодня выходной - книжку у него завтра попросите. Почитайте и возвращайтесь.
Ну а если мы Вам чего "ущемили", так это - ничего личного - только за всуе поруганных K&R и язык "С" заступились.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
lks
сообщение Apr 29 2007, 21:50
Сообщение #70


Местный
***

Группа: Новичок
Сообщений: 493
Регистрация: 18-06-06
Пользователь №: 18 143



Цитата(zltigo @ Apr 29 2007, 22:41) *
За язык "C" заступились.


Круто сказано.
А что вы еще умеете?
Go to the top of the page
 
+Quote Post
zltigo
сообщение Apr 29 2007, 22:04
Сообщение #71


Гуру
******

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



Цитата(lks @ Apr 29 2007, 21:50) *
А что вы еще умеете?

На том уровне, на котором Вы программируете, пожалуй, умею все. Ну разве только солист балета из меня будет похуже sad.gif. Немного.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Legotron
сообщение Apr 29 2007, 22:36
Сообщение #72


инопланетянин
***

Группа: Свой
Сообщений: 236
Регистрация: 24-12-06
Из: Питер
Пользователь №: 23 832



bb-offtopic.gif
Уважаемые собеседники!

Не составит ли вам большого труда вкратце еще раз описать проблему (если таковая имеется) и предложить каждой из сторон варианты ее решения! Что можно делать, что нельзя. Кратко в одном сообщении и без перехода на личности.
Поймите меня правильно, я не ограничеваю (типа не модератор, поэтому на то права не имею) дискуссию. Мне бы просто хотелось посмотреть на проблему вцелом (если она конечно есть smile.gif ) и не сталкнуться с ней самому (как-нибудь) smile.gif А то я чего-то ваще не понимаю mainstreama из всего количества сказанного!

Всё, спасибо. Больше не встреваю cheers.gif
Go to the top of the page
 
+Quote Post
zltigo
сообщение Apr 29 2007, 22:56
Сообщение #73


Гуру
******

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



Цитата(Legotron @ Apr 29 2007, 22:36) *
еще раз описать проблему (если таковая имеется)

В том-то и "проблема", что проблемы нет. Есть с тупым упорством непонимание (элементарнейших sad.gif ) языковых конструкций. Возникшее, как я понимаю, на почве "практического" знания что есть "его величество байт" и уверенности, что все остальное от лукавого. Когда из какой-то книжки и и чужих исходников вылезло чуждое понятие структуры, то ее эмпирическим ("практическим", как любит lks) путем начал насиловать путем выдергивания из всяких текстов кусков и вставления их куда попало. Изнасиловав , возгордился и решил отрекламировать "достижение". С этого и началось. На все надуманные "проблемы" давались ответы, некоторые коллеги пытались и подробно объяснять, но не воспринимались никоим образом. Если вдруг Вы сможете найти в постах lks что-то, на что не был дан ответ, или он был неправильным, или непонятным лично Вам, будте добры, повторите этот вопрос. Обязательно отвечу.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Vladimir Chekin
сообщение Apr 30 2007, 03:24
Сообщение #74


Участник
*

Группа: Новичок
Сообщений: 29
Регистрация: 16-03-07
Из: МО, г.Балашиха
Пользователь №: 26 210



rezident >> У вас есть адрес Доктора ТуамОсеса??? Оба-на! Это интересно

Нет, не знаком. Я говорю, о реальной фирме, делающей реальную работу. Мифические персонажи оставьте телесиськам, пусть там резвятся вволю, коли заняться нечем smile.gif
Go to the top of the page
 
+Quote Post
Vladimir Chekin
сообщение Apr 30 2007, 04:28
Сообщение #75


Участник
*

Группа: Новичок
Сообщений: 29
Регистрация: 16-03-07
Из: МО, г.Балашиха
Пользователь №: 26 210



Может и не в кассу, имхо вот в этой короткой фразе нашего заблуждающегося коллеги кроется смысл проблемы:
"Ну тогда обясните почему я всегда могу получить адресс массива через амперсанд не зависимо от типа данных, а от структуры не получается."

Адрес с помощью "операции амперсанд" ПОЛУЧИТЬ можно у любой конструкции языка, а вот ПРИСВОИТЬ любому указателю, хоть он и указывает на такую же длину данных, нельзя. Компилер ругается не на ВЗЯТИЕ, а на ПРИСВОЕНИЕ.

В принципе, это распространённая ошибка ассемблерного прошлого (сужу по себе), т.е. когда человек начинал программить на асме и делал это довольно долго. Поэтому он недоумевает, раз по моей задумке данные по числу байт совпадают, то почему ими нельзя свободно манипулировать? Но С-компилер этого не знает и ругается.

Хотя, это никому уже не интересно. Пошло стандартное кидание какашками. Жалко.
Go to the top of the page
 
+Quote Post

6 страниц V  « < 3 4 5 6 >
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


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


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