netch80: (bird)
[personal profile] netch80
address.sin_port = htons( ( port & 0xff )<<8 | (port & 0xff00) >> 8);


Смысл этой конструкции от меня ускользает. (Особенно, когда через несколько строк address.sin_port передаётся в функцию, которая ждёт значение в host order.)

А если в Java написать Integer.reverse(x) вместо Integer.reverseBytes(x), без привлечения утёнка проблема не решается.

Date: 2016-11-17 02:05 pm (UTC)
vitus_wagner: My photo 2005 (Default)
From: [personal profile] vitus_wagner
Все-таки редкость процессоров с прямым порядком байт негативно влияет на мозги подрастающего поколения программистов. И отсутствие strict alignment в наиболее распространенных моделях - тоже.

Date: 2016-11-18 12:52 am (UTC)
From: [identity profile] d1f.livejournal.com
> редкость процессоров с прямым порядком байт

Он обратный.
Прямой и естественный - остроконечный.

Date: 2016-11-28 08:26 pm (UTC)
From: [identity profile] netch80.livejournal.com
Нет, единственный, который имеет право зваться "прямым" - нисходящий (big-endian). И он же таки естественный.
Дискуссии на эту тему больше не допускаю.

Date: 2016-11-17 04:20 pm (UTC)
From: [identity profile] tzirechnoy.livejournal.com
А ты уверен, что та функцыя ждёт host order, а не little endian?

Date: 2016-11-17 06:38 pm (UTC)
From: [identity profile] tzirechnoy.livejournal.com
Ну, багрепорть, чо.

Date: 2016-11-23 06:47 pm (UTC)
From: [identity profile] dimich-dmb.livejournal.com
Надо знать откуда приходит значение port. htons() ведь может менять порядок байтов, а может и не менять.

Profile

netch80: (Default)
netch80

April 2017

S M T W T F S
      1
234 5678
9101112131415
1617 181920 2122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 29th, 2017 04:12 pm
Powered by Dreamwidth Studios