c++ - 使用单个值引用二维数组中的元素

标签 c++

我可能遗漏了一些基本的东西,但我找不到以下问题的解决方案。 我有一些浮点元素的二维数组,我试图找到一种方法来仅使用单个值来引用它们。 示例:

float test[5][50];
test[3][25] = 34.67;
cout << test[3][25] << endl;
int id = 25;
cout << *test[id*5+3] << endl;

我希望从两个 cout 中得到相同的结果。相反,我的输出看起来像这样:

34.67
Segmentation fault

我做错了什么?

谢谢!

最佳答案

未经测试,我认为这样的方法可能有效。请注意,C++ 数组从左维度到右维度是 major->minor。

float test[5][50];
test[3][25] = 34.67;
cout << test[3][25] << endl;
int id = 25;
float* test2 = &test[0][0]
cout << test2[(3 * 50) + id] << endl;

关于c++ - 使用单个值引用二维数组中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5170736/

相关文章:

C++ 原生到中级

c# - 什么是 C++ 中拼接的 C# 替代方案

c++ - 从IP地址查找MAC地址

c++ - 如何从整个代码的函数中打开文件?

c++ - C++/OpenSSL将PEM加载到STACK_OF(X509)

C++查找USB闪存设备的挂载路径(linux)

c++ - 链表 C++ 删除节点

c++ - 在不破坏 C++ 抽象的情况下处理对存储在私有(private)映射中的值的封装访问的标准方法

c++ - iPhone - OpenGL 使用 C++ 教程/片段

c++ - 什么是悬空指针?