Die Library LAPACK will eine Matrix so übergeben haben:
1 | double A[2*2] = |
2 | {
|
3 | 1.0, 1.0, |
4 | 1.0, 1.0 |
5 | };
|
Ich möchte aber natürlich auf die Matrix mit Zeilen und Spalten Indices zugreifen. Laut Internet geht das mit Pointer auf Matrix so und das funktioniert auch:
1 | double (*P)[2] = (double (*)[2]) A; |
1 | P[1][0] += 1.0; |
Aber wie funktioniert das? Und wieso geht es so ohne Klammern () nicht, sollte doch dasselbe sein:
1 | double *P[2] = (double (*)[2]) A; |
Und so auch nicht:
1 | double (*P)[2] = (double *[2]) A; |