word() 函数是什么?
What is the word() function?
我正在尝试转换一些 C++ 函数以在我的 python 脚本中使用并偶然发现了这个:
int Crc16(args...)
{
// Some calulations
return (int)word(~ByteHi,~ByteLow)
}
这是我需要的CRC16计算器的结尾,我不知道这个return是做什么的?特别是“单词”功能。 ~
是按位补码,最后的数字 returned 是一个整数。我在搜索此 word() 函数时没有找到任何内容。你能帮帮我吗?
它不是标准的 C 或 C++(a) 但是,给定上下文(CRC16 和变量名),它几乎肯定需要两个 8 位字节并形成一个 16 -位字.
(a) 因此它可能在您可用的库或源代码中的某处定义。
根据您展示的用法,我假设它从两个字节创建了一个 16 位值。它不是 c
/c++
的一部分。可能是您代码中定义的某些函数。
uint16_t word(uint8_t hi, uint8_t low)
{
return (hi << 8) + lo;
}
查看项目的自述文件后,我们知道它可能是一个 Arduino 相关的实用程序,然后在此处查看文档:
https://www.arduino.cc/reference/en/language/variables/conversion/wordcast/
Description Converts a value to the word data type.
Syntax
word(x)
word(h, l)
(word)x (C-style type conversion)
Parameters
x: a value. Allowed data types: any type.
h: the high-order (leftmost) byte of the word.
l: the low-order (rightmost) byte of the word.
Returns Data type: word
.
我正在尝试转换一些 C++ 函数以在我的 python 脚本中使用并偶然发现了这个:
int Crc16(args...)
{
// Some calulations
return (int)word(~ByteHi,~ByteLow)
}
这是我需要的CRC16计算器的结尾,我不知道这个return是做什么的?特别是“单词”功能。 ~
是按位补码,最后的数字 returned 是一个整数。我在搜索此 word() 函数时没有找到任何内容。你能帮帮我吗?
它不是标准的 C 或 C++(a) 但是,给定上下文(CRC16 和变量名),它几乎肯定需要两个 8 位字节并形成一个 16 -位字.
(a) 因此它可能在您可用的库或源代码中的某处定义。
根据您展示的用法,我假设它从两个字节创建了一个 16 位值。它不是 c
/c++
的一部分。可能是您代码中定义的某些函数。
uint16_t word(uint8_t hi, uint8_t low)
{
return (hi << 8) + lo;
}
查看项目的自述文件后,我们知道它可能是一个 Arduino 相关的实用程序,然后在此处查看文档:
https://www.arduino.cc/reference/en/language/variables/conversion/wordcast/
Description Converts a value to the word data type.
Syntax
word(x) word(h, l) (word)x (C-style type conversion)
Parameters
x: a value. Allowed data types: any type. h: the high-order (leftmost) byte of the word. l: the low-order (rightmost) byte of the word.
Returns Data type:
word
.