Kennt ihr benutzerdefinierte Datenstrukturen? Je nach Sprache die ihr lernt (ich bin nicht sicher, ob das hier C oder C++ sein soll) läuft das unter dem Stichwort struct und/oder class. Das wäre nämlich extremst nützlich, sich hier einen Matrixdatentypen zu erstellen.
wie kann ich meine Daten in Row Major Order speichern
Wo genau ist das Problem? Du weißt, was Row Major Order ist, oder? Du schreibst eine Funktion wie deine anderen Funktionen auch und gibst in dieser deine Matrizen aus.
Dein Programm ist aus zwei Gründen schrecklich und wartet nur darauf, schwer zu findende Fehler zu entwickeln, falls dies nicht bereits der Fall sein sollte. Dies solltest du dringend abstellen, wenn du dir selber etwas gutes tun möchtest.
Grund 1: Zeig diese Funktionsdeklaration einem Fremden:
void foo3(int size, double *data1, double *data2, double *result);
Was wird der Fremde antworten, wenn du ihn fragst, was diese Funktion tut?
Zeig diesen Funktionsaufruf einem Fremden:
foo2(N,A,B,C);
Was wird dir der Fremde antworten, was hier wohl ungefähr passiert, wenn du ihn fragst?
Dieselben Fragen könnte man fast zu jeder Zeile stellen und bekäme fast immer die gleiche Antwort. Selbst bei mehreren zusammenhängenden Zeilen. Das sollte nicht so sein. Stell dir dich selber in 2 Wochen vor. Würdest du dein Programm noch verstehen?
Grund 2: Wie schon gesagt, bin ich nicht sicher, ob ihr C oder C++ macht. Das sollte nicht sein. Dein Programm benutzt C++ Schlüsselwörter (new, welches man in C++ aber eigentlich nie benutzt, besonders nicht für Felder), benutzt aber eine Programmstruktur (d.h. wie die Funktionsköpfe aussehen und wie die Programmlogik aufgebaut ist) wie (schlechtes) C.