((__ m64 *)&(ub8)ddata)给出错误:左值作为一元'&'操作数需要

时间:2016-07-13 21:42:14

标签: gcc sse

我正在编译其他团队的源代码。我理解我得到的错误,但我无法理解这行代码(代码库应该是正确的)。

data_vec = _mm_set1_epi64(*((__m64*)&(ub8) ddata));

什么是(__ m64 *)?它在那做什么?

编辑:错误是:错误:左值需要作为一元'&'操作数

1 个答案:

答案 0 :(得分:2)

它是指针的演员。有关所使用的SSE2类型和功能,请参阅MSDN for information

错误无关。转换值不再是左值,而&只能用于左值。删除(ub8)广告投放,或者更好地找到首先生成该代码的人或宏。