|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
20.08.2012, 02:49 | #1 |
Пользователь
Регистрация: 17.08.2012
Сообщений: 17
|
Cardinal или Integer в Array of Bytes
Существует C# функция Bitconverter.GetBytes, которая возвращает массив байт из переменной типа Cardinal, Integer и так далее. Есть ли её аналог в Delphi? Если нет то как её сделать?
|
20.08.2012, 08:46 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
а Вы с какой целью интересуетесь?
можно это сделать через задание переменной, "привязанной" к абсолютному адресу нужной переменной. Например, так: Код:
например, так: Код:
|
20.08.2012, 08:50 | #3 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,886
|
Не знаю есть или нет (попробуйте, собственно, погуглить и порыть справку), но обычно такое навелосипедить быстрее, чем гуглить. Кто как велосипедит - нередко через "вариативную запись" (точно не помню как называется, это record в которой есть case). Можно вполне просто через указатели сделать, объявить 2 типа (из какого в какой конвертить), объявить 2 переменные этих типов, взять их указатели, приравнять их указатели и конверсия готова.
Вот мой вариант, написал тут и не проверял ) для остальных типов советую перегрузить функцию нужное число раз. Правда не совсем получается возврат массива байт, но смысл я думаю понятен, можно подогнать. Код:
пс2. Хотя напишу и возврат массива. Код:
LongRec, WordRec, Int64Rec - записи с возможностью разбора чисел по словам и байтам, опробуй их. Последний раз редактировалось phomm; 20.08.2012 в 09:15. |
21.08.2012, 08:42 | #4 |
кривокодер ;)
Форумчанин
Регистрация: 20.06.2008
Сообщений: 707
|
Код с коленки... Но как минимум первый вариант работать будет.
Код:
Четвертый вариант - если absolute не реализована или устарела в компиляторе. Тут уж, как говорится, на вкус и цвет...
"А как написать праграму?, "ришыти задачьку очинь нада" ©с форума. Жить становится интереснее, жить становится веселее...
{Быть или не быть} {Неуспешный суицид} Последний раз редактировалось Johnson; 21.08.2012 в 08:52. |
21.08.2012, 17:02 | #5 | |
Пользователь
Регистрация: 17.08.2012
Сообщений: 17
|
Спасибо друзья, за оказанную помощь. Самый короткий и рабочий вариант оказался этот:
Цитата:
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Integer или String | Pasha_Sh | Общие вопросы Delphi | 5 | 29.06.2012 22:46 |
преоброзования Byte Array to Single and Integer | mrCloud | Общие вопросы Delphi | 1 | 14.06.2011 21:08 |
a:array[1..50] of integer; | KulOle | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 25.12.2008 19:16 |
задать массив типа X: array [0..N] of integer -где N переменная читаеться из EditBox | Kivin13 | Общие вопросы Delphi | 22 | 06.09.2007 09:25 |
Array или не array | Димарик | Общие вопросы Delphi | 4 | 18.06.2007 15:16 |