问题标签 [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 - C语言编译时警告双指针
在这里,我创建了一个名为目录的结构。它具有指向子级的双指针和指向父级的单指针。
在这里,我创建了一个添加目录的函数。
我已经定义了一个名为 directory 的结构,它具有指向子目录的双指针和指向父目录的单指针。当我编译这个时,我收到警告。
我不确定为什么会收到此警告?
c - 在 CUDA 中分配指针列表
所以,我正在尝试分配一个指针列表,每个指针都指向我设备上的一个结构,但我不断收到段错误。这适用于 normal malloc
,但cudaMalloc
, 事情变得可疑。
我希望列表中的每个指针都指向我的结构。为什么这不起作用?
c - 用于遍历并在 2D 数组中找到 5 个最大元素的双指针。C
所以我试图做一个旨在在 int 2D 数组中找到 5 个最大元素的问题。我对动态分配数组并将元素输入其中没有任何问题。
然而,要找到最大 5 个元素并将它们存储在一个数组中,它要求一个带有原型的函数。
我不知道如何使用双指针来遍历 2D 数组,即使我阅读了其他一些关于int**
、以及int*
(返回类型)究竟是什么以及如何合并它的帖子。
c - pthread,带双指针的链表
到目前为止,我终于为我正在制作的一些测试应用程序创建了一个准确的消费者-生产者类型模型,但最后一点给我带来了一些问题。
我为我的应用程序设置了 2 个结构。一个用于链接列表,用作必须完成的工作列表。另一个是特定于每个线程的结构,其中包含指向链表的双指针。我不使用单个指针,因为我无法在一个线程中修改指针并检测另一个线程中的更改。
中的双指针thread_specs
绑定到结构根的双指针,list_of_work
如下所示:
主要:
这一切都没有警告或错误。
现在我继续创建我的pthread:
在我的 pthread 中,我执行 2 次转换,1 次转换 thread_info 结构,另一个转换链表。ptr 是我的论点:
这不会引发任何错误。
然后我有一个名为list_of_work *get_work(list_of_work *ptr)
的函数,该函数有效,所以我不会发布整个内容,但正如您所看到的,它希望看到一个指向链表的指针,它返回同一个链表的指针(或者NULL
或者是下一件作品)。
所以我使用这个函数来完成下一个这样的工作:
现在这是症结所在。我怎样才能正确地将指针转换并传递给我的函数的第一个指针后面的指针,get_work()
以便它可以做它所做的事情。
我的编译器发出警告:
我感谢谁能帮助我!
ios - 非 ARC 到 ARC:指向对象指针的指针 (**)
我正在尝试将 iOS 项目转换为 ARC。
我正在为某些文件使用编译器标志。
但是其中一个文件包含在如下方法中声明的变量:
关闭 ARC 后,会出现错误:
“指向没有明确所有权的非常量类型的指针”
我可以通过这样做使警告静音:
就所有权而言,我认为这不是一个好的做法。
但在非ARC环境中不存在该错误。
我的问题很简单如下:
我如何从非 ARC 更改为 ARC 设置对象的声明而不必使用*__strong*
?
即,我怎样才能在 ARC 下声明(或更改声明)aClass **obj
而不必使用*__strong*
,我确信我已经在某处读过它不是一个好习惯,但我忘记了我在哪里读过它。
和:
为什么在非ARC环境下不报错。
c++ - C++避免检查双指针持有的未初始化值
解决了
问题最终源于数据结构的设计。要删除根元素,必须有一个堆分配(新)指针指向它,这在数据直接由树保存的原始情况下是不可能的。现在有一个包含所有node
数据的结构,其中tree
包含所有方法和根指针的类。
我有一个双指针target_address
初始化NULL
,我必须稍后检查是否*target_address
为 NULL。在这两者之间,一个函数保证*target_address
指向一个未初始化的值,但 Valgrind 一直抱怨我只有在删除root element时才读取未初始化的值。
操作的 tree_findtarget_address
tree_delete 也抱怨未初始化的值;我很确定它也在抱怨 *target_address
PS 让 Valgrind 显示行号的提示将不胜感激,编译标志 =-g -Wall -Werror -std=c++11
和 Valgrind 的运行-q --track-origins=yes
我按照其他人的问题中的建议尝试了静态链接-static
,但这引入了更多问题并且没有解决任何问题......
错误信息
boost - scoped_ptr 用于双指针
有没有一种优雅的方式来升级到使用 boost 的 scoped_ptr 或 scoped_array 截断的以下代码?
c# - C# 参考资料;隐藏成员
假设您有一个定义如下的类。
我需要我的经理类能够以某种方式更改 SpecialData 成员的设置引用。我可以使用 C++ 中的双指针或友元类来做到这一点,但遗憾的是,该选项在 C# 中不可用。如何保护 SpecialData 免受外部用户的设置,同时仍然允许 Manager 类控制设置?我可以使用 internal 关键字来做到这一点,但这似乎并不安全或干净......
任何帮助是极大的赞赏。
c - C 双指针 Char 正在打印 NULL。不知道怎么回事?
这是显示读取的字符串的显示函数。
c - 通过将指针传递给两个函数来分配指针
我在这里做错了什么?我是在将内存分配给原始文件charPtr
还是其他东西?为什么我可以读取charPtr
withinfunc2
而不是 in main ( charPtr
is NULL
in main) 的值?