Size: a a a

Kotlin Community

2020 November 06

IP

Iaroslav Postovalov in Kotlin Community
Alexander Nozik
Не дочитал с первого раза. memcpy в котлине нет как такового. Надо пользоваться какими-то родными для платформами байт структурами. А что вы хотите сделать?
очень даже есть
источник

AM

Andrew Mikhaylov in Kotlin Community
Alexander Nozik
Там кстати не факт что разбайтовка в свифте такая же, ка и в котлин
Эт на совести имплементирующего.
источник

IP

Iaroslav Postovalov in Kotlin Community
kotlin/native
источник

DB

Dmytro Borysov in Kotlin Community
Пока тут все знатоки собрались, подскажите есть ли какие-то библиотеки или может классы для интерполяции данных?
источник

AM

Andrew Mikhaylov in Kotlin Community
Dmytro Borysov
мемориЛейаут для флоат32 там возвращает 4) так что да)
В эти 4 байта флоат может быть уложен разными способами :) Но по идее стандарт IEEE 754 определяет формат, так что скорее всего совпадёт. С оговоркой, что надо убедиться в одинаковом byte order.
источник

DB

Dmytro Borysov in Kotlin Community
Andrew Mikhaylov
В эти 4 байта флоат может быть уложен разными способами :) Но по идее стандарт IEEE 754 определяет формат, так что скорее всего совпадёт. С оговоркой, что надо убедиться в одинаковом byte order.
да, поклацав в плейграунде, для котлина еще реверснуть нужно)
источник

D

Denys in Kotlin Community
Andrew Mikhaylov
В эти 4 байта флоат может быть уложен разными способами :) Но по идее стандарт IEEE 754 определяет формат, так что скорее всего совпадёт. С оговоркой, что надо убедиться в одинаковом byte order.
Я вот не уверен. В JVM используется big endian порядок. В swift он может зависеть от target платформы.
источник

AN

Alexander Nozik in Kotlin Community
Dmytro Borysov
мемориЛейаут для флоат32 там возвращает 4) так что да)
В ByteBuffer есть методы для работы с разной разбайтовкой. Но надо все проверить
источник

AN

Alexander Nozik in Kotlin Community
Denys
Я вот не уверен. В JVM используется big endian порядок. В swift он может зависеть от target платформы.
По-моему сейчас во всех языках уже дефолты. Это только в С от платформы зависело
источник

РО

Рулон Обоев... in Kotlin Community
интересно получится ли скопировать память boxed-значения
источник

D

Denys in Kotlin Community
Alexander Nozik
По-моему сейчас во всех языках уже дефолты. Это только в С от платформы зависело
источник

D

Denys in Kotlin Community
Хотя нет, нужно Float32 смотреть
источник

AN

Alexander Nozik in Kotlin Community
Рулон Обоев
интересно получится ли скопировать память boxed-значения
источник

РО

Рулон Обоев... in Kotlin Community
ну то есть уже не просто memcpy)
источник

РО

Рулон Обоев... in Kotlin Community
короче, как это принято в русских чатах, вы спрашиваете про решение задачи, а вам сразу объясняют, что задача дерьмо
источник

РО

Рулон Обоев... in Kotlin Community
не надо копировать память, короче)
источник

AN

Alexander Nozik in Kotlin Community
Рулон Обоев
ну то есть уже не просто memcpy)
Просто, но своя модель памяти, ручками написанная
источник

D

Denys in Kotlin Community
Denys
Хотя нет, нужно Float32 смотреть
https://developer.apple.com/documentation/swift/float/1847510-bitpattern

Значит ли то, что в классах Float/Double есть такой геттер то, что порядок байт таки зависит от платформы?
источник

AN

Alexander Nozik in Kotlin Community
Смысл в том, что для того, чтобы копировать память, нужна абстракция для нее
источник

РО

Рулон Обоев... in Kotlin Community
или можно взять bson
источник