有人可以解释为什么这段代码不起作用吗?指针算术错误(OpenCL)
__kernel void foo(__global const void* a)
{
__global const uchar* currentPosition = (__global uchar*) a;
// Update the position
currentPosition += 4;
}
当我尝试在增量后读取currentPosition的值时,得到与不执行算术的结果相同的结果。
这是怎么发生的?
谢谢。
新的你是什么意思与阅读currentPosition'的'值:你的意思是你读的值由'currentPosition'指出,(这不应该已经改变了),还是你的意思是'currentPosition'仍然指向相同的内存地址(不应该是这种情况)? – Grizzly