| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Для новичков > преобразования |
| Автор: jericho 25.1.2012, 10:21 |
| Здраствуйте, объясните пожалуйста как, что и почему, работает сея xKey[i]:= PByte(integer(Key))^; где xKey: array[0..255] of byte; i: integer; Key: pointer; что происходит при integer(Key) что происходит при PByte()^ заранее благодарен |
| Автор: Snowy 25.1.2012, 11:16 |
| указатель Key превращается в integer, представляющий собой число - адрес в памяти. число-адрес превращается обратно в указатель, но уже на byte. Указатель разыменовывается и превращается в байт. зачем нужно преобразовывать 2 раза - понятия не имею. Можно просто xKey[i]:= PByte(Key)^; |
| Автор: jericho 25.1.2012, 11:44 |
я не стал дописывать xKey[i]:= PByte(integer(Key)+(i mod Len))^; по идее мне эту штуку надо на c# (i mod Len) - с этим проблем нету а вот остальное пока непойму |