// 计算给定长度数据的 16 位 CRC。
U16 GetCrc16(const U8* pData, int nLength) {
U16 fcs = 0xffff; // 初始化
while(nLength>0){
fcs = (fcs >> 8) ^ crctab16[(fcs ^ *pData) & 0xff];
nLength--;
pData++;
}
return ~fcs; // 取反
}
其中的U8* pData
和函数中的*pData
是什么意思
转写成php (fcs ^ *pData)
该怎么写
谢谢 百度了好久都没明白星号pData的意义
星号
*
不是位运算符,是C中的指针符号,在PHP
中没有指针,所以也就没有想对应的操作。不过这段代码里,只是使用*
来取指针的值,在你转化到PHP
代码时,直接将指针忽略,采用对应的变量即可。