私はC++をかなり新しくしていますが、私は最近この問題に遭遇しました。参照を介して配列を渡す?
このコードは明らかに動作します:
void setvalues(int *c, int *d)
{
(*c) = 1;
(*d) = 2;
}
int main()
{
int a, b;
setvalues(&a, &b);
std::cout << a << b;
}
、なぜこれがエラーを返すのですか? Visual C++ 2010のエラー:
C2664: 'setvalues' : cannot convert parameter 1 from 'int (*)[2]' to 'int *[]'
void setvalues(int *c[2], int *d[2])
{
(*c[1]) = 1;
(*d[1]) = 2;
}
int main()
{
int a[2], b[2];
setvalues(&a, &b);
std::cout << a[1] << b[1];
}
配列へのポインタ程度違うのか?私は周りを捜したが運がない。
は[CDECL](http://cdecl.ridiculousfish.com/?q=int+*c%5B2%5D)あなたの友達です。 –