我试图在函数中传递单个指针和双指针 。 但它给了我错误。
int main() { int *pt; fun(pt); . . } fun(int *pt) { pt=(int*)malloc(6*sizeof(int)); . . }
我们使用双指针时的语法是什么。 任何人都可以用一个例子来描述它,或者可以编辑上面的例子。 我将非常感谢你。
引用语义的基本思想是函数修改存在于函数自身范围之外的其他一些对象。 您可以通过将正在引用的对象的地址传递给带有“指向对象类型的指针”类型的参数的函数,在C中实现引用语义。
“通过指针引用语义”的关键标志包括以下两点:
例如:
呼叫者:
T x; f(&x); // address-of
被调用者:
void f(T * p) // take argument as pointer { (*p).y = 20; // dereference (via *) p->x = 10; // dereference (via ->) }
在您的情况下, T = int *
:
int * pt; fun(&pt); // function call takes address void fun(int ** p) // function takes pointer-to-object... { *p = malloc(173); // ...and dereferences to access pointee }
以上就是c/c++开发分享将单指针和双指针传递给c 中的函数相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/519221.html