限制限定符和指针运算
restrict qualifier and pointer arithmetic
递增或递减限制限定指针是否保留无混叠假设?
// a and b point to disjoint arrays
void foo(size_t n, double * __restrict a, double * __restrict b) {
size_t i;
double x, y, z;
double * c = b; // copy
for(i=0; i<n; ++i) {
x = *(a++); // not aliased
y = *(b + i); // not aliased
z = c[i]; // not aliased
}
}
谢谢。
是。restrict
限定符是指针类型的一部分,当您递增、递减或分配它时,这种类型不会改变。
相关文章:
- 1d 智能指针不适用于语法 (*)++
- 在C#中处理C++指针而不使用unsafe的最佳方法
- 为什么使用 "this" 指针调用派生成员函数?
- 避免指针运算,修复叮当整齐错误
- 如何在 c++ 中使用带有数学运算的引用/指针?
- 在标准布局对象中进行指针运算(例如,使用偏移量)时,我们是否需要使用 std::launder?
- 对已删除的数组进行指针运算仍然合法吗
- LLDB Python脚本中的指针运算
- C++中使用char*的指针运算
- 更正C中的指针运算
- 指针运算正在运行
- C++奇怪的指针运算
- T*与char*指针运算
- 指针运算在数组之外有用途吗?
- 我怎么知道是什么使不完整类型不完整的错误:对指向不完整类型的指针进行算术运算
- c++指针运算的怪异
- c++中auto_ptr的指针运算
- 调试断言失败!使用指针运算的字符串操作
- 限制限定符和指针运算
- std::uintptr_t可以用来避免指针越界运算的未定义行为吗?