问题标签 [pointer-to-array]

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 投票
2 回答
150 浏览

arrays - 在 C 中定义类型时对指针语法感到困惑

在一些入门代码中,我们有:

在我们的主程序中,我们有:

我对(*图像)感到困惑

如果我要定义一个指向 RGBTRIPLE 的指针,我想我会使用:

是否与以下内容相同:

0 投票
3 回答
145 浏览

c - 为什么声明 int (*f())[]; 不给出错误或警告?

以下语句声明了一个不带参数并返回指向整数数组的指针的函数。

它返回一个指向_____大小的整数数组的指针
我们没有指定数组的大小,所以它应该给出某种警告或错误。

我问这个是因为当我们将二维数组或指向整数数组的指针传递给函数时,我们总是应该在正式参数中声明指针时指定维度。
那么,为什么允许这个声明呢?
是否有任何具体原因不为这种声明抛出错误或警告?
是我们在定义这个函数时也可以省略维度,还是在定义它时指定维度变得不可避免?
为了更好地理解,请给出这个函数的虚拟定义。

0 投票
2 回答
40 浏览

c - 在形式参数中省略二维数组的第二维不会引发任何错误或警告

我正在阅读这个问题的答案为什么在声明多维数组时允许省略第一个维度,而不是其他维度? 以及其他一些问题,我知道我们可以省略第一个维度,但其他维度不可避免地要指定。
令我惊讶的是,以下代码执行得非常好:

但是,如果我使用指针p打印一些值,例如

它给出了一条错误消息:

为什么 C 允许这样的声明?
如果非常确定它会在使用指针时抛出错误,那么为什么它在声明本身时不抛出错误?为什么要等待指针使用抛出错误?
允许这样的声明有什么具体原因吗?

0 投票
5 回答
2162 浏览

c++ - 什么是指向数组的指针,int (*ptr)[10],它是如何工作的?

我期待ptr成为一个10整数指针数组。

我不明白它是如何指向10整数数组的指针。

0 投票
2 回答
78 浏览

arrays - 通过指向其元素的指针修改数组的元素

给定代码:

我希望由 指向的数组的每个单独元素pv乘以3. 相反,我得到的输出是:

我究竟做错了什么?

0 投票
1 回答
71 浏览

c - C 中 (*)[] 和 * 的区别

希望在理解这两行之间的区别方面获得一些帮助:

如果我做:

我得到了分配的数组/内存中第一个元素的地址。

希望更彻底地了解区别是什么以及我何时使用它们中的每一个?

除了问题:

这种铸造合法吗?请解释为什么以及如果它是合法的,tmp 等于什么?:

感谢任何做出贡献的人!

真挚地,

鱼子:)

0 投票
3 回答
224 浏览

arrays - 指向数组 int (*ptr)[] 的指针

我试图了解指向数组的指针是如何工作的。一个代码片段;

星号*取消引用ptr. 如果i = 1,为什么(*ptr+i) = ith value不是value at ptr + i

0 投票
0 回答
10 浏览

multidimensional-array - for语句中的索引在c ++中分配内存后更改值

我正在尝试解决来自 HackerRank 的一个编程问题。编程挑战是关于具有动态内存的可变大小数组。我遇到了内存分配的奇怪问题。

该程序的输出是:

问题在于 printf 中“i”的值。

“i”的值在以下位置的程序中发生了变化。有人可以解释为什么“i”的值在内存分配后发生了变化吗?

0 投票
0 回答
30 浏览

c - How can I replace elements of this 2D array?

I am coding a 15-puzzle game for my school assignment. I take three movement parameters. These are x, y coordinates and directon.

But my code does not replace elements an print first table again and again. What is wrong?

This part is function call for movement:

and this part is movement function:

0 投票
2 回答
177 浏览

c - 如何在 C 中动态分配 int (*p)[n] 形式的指针?

假设我从某个地方获得输入并将其存储在一个变量中。假设变量是 Cols。

我想在表单中创建一个数组

现在,我知道你不能这样做。那么我将如何动态分配它来做到这一点?

教我如何做到这一点将不胜感激!