gpt4 book ai didi

c - htonl() 与 __builtin_bswap32()

转载 作者:IT王子 更新时间:2023-10-29 00:45:12 26 4
gpt4 key购买 nike

__builtin_bswap32() 用于反转字节(它用于 littel/big endian 问题(来自 gcc))。

htonl() 也用于反转字节(从主机到网络的转换)。

我检查了这两个函数,它们返回相同的结果。

有没有人可以确认这两个函数做同样的事情? (感谢标准引用)

最佳答案

我不同意你关于 htonl() 用于反转字节顺序的说法。它用于将主机字节顺序转换为网络字节顺序。根据主机的字节顺序,这可能会或可能不会导致字节顺序被颠倒。

我建议你使用表达正确语义意图的函数:

  • 如果您希望将主机字节顺序转换为网络字节顺序,请使用 htonl()
  • 如果您希望颠倒字节顺序,请使用 __builtin_bswap32()

关于c - htonl() 与 __builtin_bswap32(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21527957/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com