首页  >  问答  >  正文

问一段C语言中的位运算函数的意义

// 计算给定长度数据的 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的意义


巴扎黑巴扎黑2926 天前832

全部回复(1)我来回复

  • 面对疾风吧

    面对疾风吧2016-11-07 15:28:05

    星号*不是位运算符,是C中的指针符号,在PHP中没有指针,所以也就没有想对应的操作。不过这段代码里,只是使用*来取指针的值,在你转化到PHP代码时,直接将指针忽略,采用对应的变量即可。

    回复
    0
  • 取消回复