C++ 不使用指针而使用结构和数组的访问冲突
所以我试着做一个程序,在结构数组中取一个结构数组,然后给它分配一个1-9的随机数 结构多维 { int t[16]; }; 结构多 { 多维t[16]; }; 多重生成() { 多重m; srand(时间(空));C++ 不使用指针而使用结构和数组的访问冲突,c++,arrays,struct,visual-studio-2013,access-violation,C++,Arrays,Struct,Visual Studio 2013,Access Violation,所以我试着做一个程序,在结构数组中取一个结构数组,然后给它分配一个1-9的随机数 结构多维 { int t[16]; }; 结构多 { 多维t[16]; }; 多重生成() { 多重m; srand(时间(空)); 对于(inti=0;i16个元素的法定索引是[0,15],而不是[0,16]。 因此, for(inti=0;i16元素的合法索引是[0,15],而不是[0,16]。 因此, for(int i=0;i问题在于for循环: for(int i=0;i问题在于for循环: 对于(int
对于(inti=0;i16个元素的法定索引是[0,15],而不是[0,16]。 因此,
for(inti=0;i16元素的合法索引是[0,15],而不是[0,16]。
因此,
for(int i=0;i问题在于for循环:
for(int i=0;i问题在于for循环:
对于(int i=0;i),这似乎是个问题。谢谢!这似乎是个问题。谢谢!你知道多维数组是一种东西,是吗?int m[16][16]是的,但我发现当我需要返回多维数组时,包含整数数组的多个结构更容易。怎么会呢?如果语法让你感到困惑,那么你只需typedef int my_matrix[16][16]
然后使用类型my_matrix
@cdhowie我当时应该做更多的研究。谢谢你的那行代码你知道多维数组是一种东西,是吗?int m[16][16]是的,但我发现当我需要返回多维数组时,包含整数数组的多个结构更容易。怎么会呢?如果语法让你感到困惑,那么你只需typedef int my_matrix[16][16]
然后使用类型my_matrix
@cdhowie我当时应该做更多的研究。谢谢你的代码行
for (int i = 0;i <= 16; i++)
for (int i = 0; i < 16; i++)
struct multiDim
{
int t[16];
};
struct multi
{
multiDim t[16];
};
multi generate()
{
multi m;
// srand(time(NULL));
for (int i = 0;i < 16; i++)
{
for (int I = 0;I < 16;I++)
{
int ii = 100;
ii = ii % 10;
if (ii <= 9)
{
m.t[i].t[I] = ii;
}
}
}
return m;
}