创建一个1D数组,每个单元格有两个变量?

mil*_*d_b 0 c++

我如何创建一个1D数组,这个数组的每个单元格可以存储两个元素(i,j)?例如,array [0]返回i,j的两个单元格,而array [1]返回两个下一个单元格和....

Ang*_*.47 5

你需要的是一个结构

struct mydata
{
    int i;
    int j;
};
Run Code Online (Sandbox Code Playgroud)

然后你可以在你的主要做:

mydata x[5];

x[0].i = 1;
x[0].j = x[0].i++;
Run Code Online (Sandbox Code Playgroud)

等等

  • 这实际上更像是对"C++"问题的"C"答案. (2认同)

use*_*016 5

你应该使用一对矢量:

std::vector<std::pair<TI, TJ>> v;
Run Code Online (Sandbox Code Playgroud)

您的第一个和第二个细胞元素的类型分别在哪里TI和哪个TJ.

然后添加如下元素:

v.push_back(std::make_pair(i, j));
Run Code Online (Sandbox Code Playgroud)

并通过以下方式访问它

v[0].first // first cell
v[0].second // second cell
v[1].first // and so on
...
Run Code Online (Sandbox Code Playgroud)