Просмотр полной версии : Int64
RandomSOFT
06.09.2011, 18:39
Как из имеющегося Int64 в десятичном представлении вычленить старшие и младшие 32 разряда?
Если вы про com.netease.protobuf.Int64 (http://code.google.com/p/protoc-gen-as3/source/browse/as3/com/netease/protobuf/Int64.as) то там есть геттер high, а в супер-классе публичное поле low. С данной библиотекой не работал, просто предполагаю.
RandomSOFT
06.09.2011, 20:12
Нет, библиотек никаких в данный момент не имею ввиду, меня интересует алгоритм. Нужна функция, которая на вход получает Int64, а на выходе дает два Int32, старшие и младшие разряды соответственно.
gloomyBrain
06.09.2011, 20:12
@bav - предполагаю, что раз число "в представлении", то, вероятнее всего в виде строки. а раз так - нужно разбивать строку, делать parseInt или parseFloat (потому как оно возвращает Number и мы точно не вылезем за пределы int'а). Ну и хранить все это в ByteArray или собственном классе.
ЗЫ
Это все телепатия, вопрос надо бы переформулировать
RandomSOFT
06.09.2011, 20:17
Да, изначально Int64 - строка в десятичном представлении, нужно получить два Int32.
выше ведь ссылку на com.netease.protobuf.Int64 привели, там как раз алгоритм можно подглядеть... вообще для упрощения вычислений в таком случае я с сервера передаю Int64 в виде строки в шестнадцатеричном представлении. с ним проще работать, чем с десятичным представлением...
RandomSOFT
07.09.2011, 17:22
Да, подсмотрел, спасибо.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.