问题标签 [dereference]

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.

0 投票
5 回答
352 浏览

c - 关于取消引用结构指针的问题

我正在编译这段代码,但出现编译错误,提示“取消引用指向不完整类型的指针”。我得到了最后一个打印语句的错误,在此之前我尝试指向 (*temp)。num 到 b 的地址

0 投票
3 回答
3957 浏览

javascript - Javascript - 从外部数组中删除对我的对象的引用

我在取消引用 Javascript 对象并将其设置为 NULL 时遇到问题。

在这里,我有一个支持递归子目录删除的文件夹实现。请查看我的评论以了解我的困境。

0 投票
5 回答
10098 浏览

objective-c - 通过取消引用更改 NSArray 中的值?

我遇到了一个与objective-c 中的数组中的指针相关的问题。

我要做的是获取 NSArray 中的指针,将它们传递给一个方法,然后将返回的值分配回原始指针(属于数组的指针)。

根据我对 C 和 C++ 的了解,通过取消引用数组中的指针,我应该能够更改它们指向的值......这是我正在使用的代码,但它不起作用(价值电话指向根据 NSLog 输出从不更改)。

这是我将 NSString* 传递给的方法签名:

如您所见,我正在使用变量 phone 遍历 phoneNumbers 中的每个 NSString*。我将电话传递给 removeNonNumbers:,它返回修改后的 NSString*。我然后取消引用从 removeNonNumber 返回的指针并将值分配给电话。

如您所知,我可能不太了解 Objective-C 对象。我很确定这可以在 C++ 或 C 中使用,但我不明白为什么它在这里不起作用!在此先感谢您的帮助!

0 投票
2 回答
249 浏览

perl - @{$list_ref} 和 @$list_ref 在 Perl 中是等价的吗?

我是 Perl 的新手,很好奇它们是否@{$list_ref}完全@$list_ref等价。

它们似乎可以互换,但我很紧张,因为我可能会遗漏一些微妙的事情。

0 投票
4 回答
27727 浏览

c++ - 在 C++ 中使用集合迭代器

当我尝试在 C++ 的调试模式下使用集合迭代器时,我收到一条错误消息,提示“map/set iterator not dereferencable”。我不明白,因为我认为取消引用是你应该如何使用迭代器。代码如下所示:

这是我在网上看到的关于如何使用迭代器的所有示例的格式。我究竟做错了什么?

0 投票
2 回答
95990 浏览

c++ - 取消引用指向访问元素的向量指针

如果我在 C++ 中有一个指向向量的指针:

我想访问向量的一个元素,然后我可以通过取消引用向量来做到这一点:

但是这种取消引用实际上会在堆栈上创建我的向量的副本吗?假设向量存储 10000 个整数,是否会通过取消引用 vecPtr 10000 个整数被复制?

谢谢!

0 投票
4 回答
2330 浏览

c - 正确使用预增量运算符和指针解引用运算符

我刚刚写了以下代码行:

我的意图是在与 进行比较之前增加指向count的数据结构中的变量,并且这行代码有效。data_ptrthreshold

如果我想data_ptr在进行比较之前增加,我会这样写:

出于好奇,我也尝试了这行代码:

并发现它的行为与第一个完全相同。

第一个问题: 为什么示例 #3 与示例 #1 的工作方式相同?这是操作员优先级的问题吗?标准中的东西?我不得不编写一个快速测试程序,因为答案对我来说并不明显。

第二个问题:我应该以if不同的方式写这个陈述吗?我可以先在自己的行上执行增量,然后测试条件以避免任何可能的混淆。这是必要的,还是前两个例子本身就足够明显?

0 投票
3 回答
373 浏览

dereference - 解引用指针的值是多少

我意识到我对取消引用指针的值有些困惑,因为我正在阅读带有以下代码片段的 C 文本:

我的困惑在于最后一行中 *arrPtr 的值。这是我到目前为止的理解。

第 3 行,matrix 被声明(暂时定义)为由 3 个元素组成的数组,该数组由 10 个 int 类型元素组成。

第 4 行,arrPtr 被定义为指向由 10 个 int 类型元素组成的数组的指针。它也被初始化为一个10个元素的数组的ptr(即矩阵的第一行)

现在第 5 行,arrPtr 被取消引用,产生了实际的数组,所以它的类型是 10 个整数的数组。

我的问题:为什么数组的值,只是数组的地址,而与它的元素无关?

0 投票
2 回答
1119 浏览

c - 通过引用将 char** 传递给函数

季节的问候!我有一个函数可以打印出一个 char** 的内容,该 char** 被用作一个数组来存储许多字符串。声明如下:

这里 historySize 是一个全局 int,现在设置为 8。该数组以循环队列的形式填充了用户输入的命令。有几个地方我可能希望打印出缓冲区的内容,所以我做了一个函数。理想情况下,该函数接受对 commandArray 的引用并循环遍历它,打印出它包含的内容。现在,我不得不说指针和引用不是我的强项,所以我不确定我是否正确地做事。该函数如下所示:

我将我的 char** 传递给这样的函数:

就目前而言,一切都编译得很好,但是当程序打印历史记录时,函数会挂在循环中的某个位置,并且不会打印出 char** 中的内容。所以,我的问题是:我是否正确地传递了 commandArray,我是否正确地声明了函数,我是否在函数中以正确的方式取消引用它?

提前感谢您的任何和所有帮助或建议!

-本

0 投票
12 回答
89702 浏览

c++ - 检查迭代器是否有效

有什么方法可以检查迭代器(无论它来自向量、列表、双端队列......)是否(仍然)可取消引用,即尚未失效?

我一直在使用try- catch,但是有没有更直接的方法可以做到这一点?

示例:(不起作用)