问题标签 [double-pointer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 指针数组的动态初始化
在上面的代码中,我在构造函数的第二行(b = new int*[10])得到一个编译错误。int**' to
它说错误: int * [0u]'分配中的类型不兼容
为什么会这样?
c - 双指针内的值未正确更新 (C)
我有一个读取输入文件的函数,应该修改 char** 和 int* 的内容。功能如下:
我在主程序中定义了如下输入和文件:
我调用函数如下:
输入文件包含 3 行,如下所示:
我注意到在 while 循环期间,“当前”值被正确读取,但存储在所有输入 [*] 中,导致:
如果有人知道这里出了什么问题,我将不胜感激。
c - 如何获取双指针指向的二维数组的大小?
我试图从指向数组的双指针中获取二维数组的行数和列数。
上面的函数需要打印尺寸的详细信息,哪里出错了。
我正在使用 malloc 创建数组。
如果我使用这样的东西怎么办
列 = sizeof(a)/sizeof(int) ?
c - 向C中的结构分配双指针内存
找不到此代码有什么问题,它在输入正好 4 个值时按预期工作,但在第五次调用时(甚至在它要求 scanf 之前)它总是给我这个错误: * glibc detected./a2: 双重释放或损坏 (fasttop): 0x0916e018 * *
这是我的程序的一些代码:
我知道我不必制作 dSizePtr,我可以传入 &dSize,但是我的程序当前设置的方式(这不完全相同,只是为了可读性而压缩),这就是我必须通过的方式它。
老实说,我不知道为什么会出现这个错误。一直在查看我的代码几个小时并在线阅读并没有找到解决方案。任何帮助将不胜感激!
c++ - unsigned char ** 到 opencv mat
我快到了,但我不太明白如何转换
我知道 cv::Mat 的 .data 部分是 uchar*
我正在使用一个以...的形式返回和图像的函数
但我的其余代码使用 cv::Mat's。我也没有我正在使用的库的源代码,所以我真的不知道它在做什么。
编辑 感谢您的帮助,我已经做到了...
但图像是黑色的,所以我现在需要找出那里是否真的有任何东西。
抱歉缺乏研究,我的截止日期很紧,不,这不是家庭作业,试图准备一些东西来向教授展示结果!
c++ - WIA 2.0 - IWiaDevMgr2::GetImgDlg() - 如何声明/初始化 ppbstrFilePaths 参数
我正在尝试在我的 VS2012 C++ 库中实现一些 WIA 2.0 代码,并且遇到了IWiaDevMgr2::GetImageDlg调用的问题,特别是 ppbstrFilePaths 参数。我不太确定如何声明/初始化它。
从http://msdn.microsoft.com/en-us/library/windows/desktop/aa359932(v=vs.85).aspx的文档中:
ppbstrFilePaths [in] 类型 - BSTR**
指向已扫描文件的路径数组的指针的地址。在调用 IWiaDevMgr2::GetImageDlg 之前,将指针初始化为指向大小为零 (0) 的数组。见备注。
我已经尝试了各种不同的声明方式,但都没有成功,例如:
我也尝试过类似的事情:
谁能指出我声明和初始化此 BSTR ** 的正确方向?我不是一个大的 C++ 开发人员,在这一点上几乎是在猜测。
c++ - c ++ valgrind双指针删除用于防止内存泄漏
读后: C++指针数组:delete还是delete[]? (由 shai vashid 回复)和 http://www.cplusplus.com/forum/beginner/6651/
我实现了以下内容:
内核.h
内核.cpp
我不确定我做错了什么。
请问有什么建议吗?
谢谢你。
c++ - 指针解引用问题
我有一个函数void MOVE_TO(Square **sendingSquare, Square **receivingSquare)
,Square
一个类在哪里:
问题是,当MOVE_TO(...)
返回时,两个方格都指向接收方格,而应该被移动的居住者已经完全消失了。想法/建议?我的代码几乎被卡住了,直到我能解决这个问题。如果我在提出任何建议之前弄清楚我的问题,我会回来回答我自己的问题。
c - 双指针:指向结构成员的指针,它是一个指针
我正在尝试编写一个程序来播放“Pangolin”(就像这个人一样- 它问是/否问题,沿着二叉树走直到它到达叶节点。然后它“猜测”,如果用户说答案是错误的,询问用户他们在想什么,并提出一个将其与错误猜测区分开来的问题。然后将新数据添加到树中)。
这是我的树节点结构。NodeType 对于包含问题的节点是 QUESTION_NODE,对于包含“对象”的节点是 OBJECT_NODE - 这是程序推断用户正在考虑的事情。问题节点具有指向子节点的指针 - 一个表示是,一个表示否。
由于这是一个学习练习,我试图用双指针来做。这是应该向树中添加问题节点的函数:
然后调用 addData函数:
我的(可能是错误的)理解是这样的:
在“ask()”中,我向 addData 传递了一个指针,该指针指向“node”的成员“yes”(或 no)。该成员又是一个指针。当我在 addData 中分配给“*replace”时,这应该修改结构,将其“是”(或否)成员指针重定向到指向我创建的新问题节点。
我调试了一下,发现newQuestionNode和newObjectNode创建成功。newQuestionNode 的子节点已正确分配。但是,新的问题节点不会插入到树中。“*replace = newQuestionNodePtr”行没有我期望的效果,并且“询问”范围内的“节点”引用的节点没有重定向其子指针。
谁能看出我的理解有什么问题?或者也许是我没有在我的代码中正确表达它的一种方式?抱歉这个问题太长了。
c - 使用双指针的二维数组实现
请考虑以下代码:
我的代码没有问题。它工作正常。
我有一个关于指针算术的问题:
*(ptr+0)
= 指向 COMPLETE BLOCK(第一个数组)
*(ptr+1)
的指针 = 指向 COMPLETE BLOCK(第二个数组)的指针。
但什么是:(*ptr+1)
?
GDB 输出:
我对此感到困惑。请给我一些解释来解决这个疑问。