c# - 将 C/C++ 宏转换为 C# 中的等效代码

标签 c# c++ c macros

请,我需要帮助,了解如何在 c# 中获得与 c/c++ 中的任何宏代码等效的代码作为此宏。

#define BYTESWAP16(x)                   \
    ((((x) >> 8) & 0x00FF) | (((x) << 8) & 0xFF00))
#define BYTESWAP32(x)                   \
    ((((x) >> 24) & 0x000000FF) | (((x) >> 8) & 0x0000FF00) | \
     (((x) << 8) & 0x00FF0000) | (((x) << 24) & 0xFF000000))
#define ntohs(x)                        BYTESWAP16(x)
#define htons(x)                        BYTESWAP16(x)
#define ntohl(x)                        BYTESWAP32(x)
#define htonl(x)                        BYTESWAP32(x)

最佳答案

您可以使用IPAddress.HostToNetworkOrderIPAddress.NetworkToHostOrder来执行这些操作。这些都内置于框架中。

关于c# - 将 C/C++ 宏转换为 C# 中的等效代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19434385/

相关文章:

c# - 何时使用表达式

c# - 如何判断 IQueryable 是否为 IOrderedQueryable?

c++ - 如何知道它是文本中的新行

c++ - 双右尖括号 (>>) 在特定情况下会产生语法错误

C++ 分配 vector 所花费的时间

c - 从十六进制字符数组中获取整数?

C: 声明一个指向常量字符数组的常量指针

c# - .NET 中的 SQL 注入(inject)防护

c# - 我如何使用 C# 将组合框选择的值添加到 Crystal Report 文本框

c - sscanf 格式问题避免 :