Ich schreibe diesen Code, um 3 Dateien zu lesen, TM ist die Größe der quadratischen Matrix, LER die Anzahl der Zeilen eines Arrays und definiere aus dem letzten Wert eine nicht quadratische Matrix von (ler/2)*2
Dann … liest der Code eine Datei mit einigen Beziehungen, alle sind Zahlen und werden C zugewiesen[ler].
Dann … C[ler] ist B zugeordnet[ler/2][2].
Diese Koordinaten pro Zeile in B[ler/2][2] sind a und b zugeordnet.
a und b sind die Zeile und die Spalte der Matrix A[tm][tm] wo 1 hinzufügen.
Mein Code stürzt ab und ich sehe nicht, was der Fehler ist.
Wenn ich versuche, es zu kompilieren, wird der Compiler gcc -g -o MatSim MatSim.cpp aufgefordert:
/usr/include/c++/4.6/iostream:75: undefined reference to `std::ios_base::Init::Init()'
/usr/include/c++/4.6/iostream:75: undefined reference to `std::ios_base::Init::~Init()'
collect2: ld returned 1 exit status
Auch wenn ich versuche, es zu kompilieren, der Compiler f77 -o MatSim MatSim.cpp aufgefordert:
/tmp/cc6ewlkf.o: In function `__static_initialization_and_destruction_0(int, int)':
MatSim.cpp:(.text+0x17ad4a): undefined reference to `std::ios_base::Init::Init()'
MatSim.cpp:(.text+0x17ad4f): undefined reference to `std::ios_base::Init::~Init()'
collect2: ld returned 1 exit status
Lösung
Das Hauptproblem war ein Bibliotheksproblem. Kompilieren Sie Ihren Code mit:
g++ -g -o MatSim MatSim.cpp -lstdc
Funktioniert immer noch nicht? Bibliotheken installieren:
sudo apt-get install g++-multilib
Gibt der Compiler einen Fehler aus? Sind Sie sicher, dass Sie richtig liegen, wenn Sie sagen: “Der Compiler hat einen Exit-Status von 1 angegeben” und nicht, dass das Programm einen Exit-Status von 1 angegeben hat?
– Celeritas
5. Juni 2012 um 23:24 Uhr
Celeritas, ja, das erhalte ich direkt nachdem ich einen der Compiler ausgeführt habe [gcc o f77]
– Ein anderer.Chemiker
5. Juni 2012 um 23:27 Uhr
mögliches Duplikat von C++-Bibliotheken unter Unix nicht gefunden
– Jonathan Leffler
6. Juni 2012 um 1:51 Uhr
Danke Jonathan Leffler!!!! Du und Reinier habt meinen Code aufgeklärt und jetzt kann ich wirklich vorwärts gehen!!!!
– Ein anderer.Chemiker
6. Juni 2012 um 2:48 Uhr