#include <iostream>
using namespace std;
int main ()
{
int **a;
int b[5] = {3,4,5,6,1};
*a=b;
cout << *((*a)+0) << endl;
return 0;
}
私の理解によると、*((*a)+0)
と同等(*a)[0]
です。私が間違っている?上記のコードで配列の最初の要素を出力するにはどうすればよいですか?
そして、なぜこのコードは機能するのでしょうか?
#include <iostream>
using namespace std;
int main ()
{
int *a;
int b[5] = {3,4,5,6,1};
a=b;
cout << *(a+0) << endl;
return 0;
}
どこでも置き換えるa
と*a
、なぜ間違っているのですか?