Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 |
int a[1000]; int b[1000]; int* c; c = a; a = b; b = c; |
C-/C++-Quelltext |
|
1 2 3 4 |
int* var = (int*)tbMemAlloc(1000 * sizeof(int)); var[0] = 1; var[1] = 5; ... |
PD
unregistriert
Administrator
Zitat von »"PD"«
Due siehst? Werte getauscht Wobei ich grad net ganz sicher bin ob man nem array so einfach ne neue Adresse zuweisen darf
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
// Speicherbereiche reservieren int *pData1 = static_cast<int*>(tbMemAlloc(1000*sizeof(int))); int *pData2 = static_cast<int*>(tbMemAlloc(1000*sizeof(int))); int *pTempD = static_cast<int*>(tbMemAlloc(1000*sizeof(int))); // pData1 mit Zufallswerten füllen if(!pData1) { TB_ERROR_MESSAGE("Nicht genug Speicher"); } else { for(int i = 0; i < 1000; i++) pData1[i] = tbIntRandom(0,1000); } // pData2 mit Zufallswerten füllen if(!pData2) { TB_ERROR_MESSAGE("Nicht genug Speicher"); } else { for(int i = 0; i < 1000; i++) pData2[i] = tbIntRandom(0,1000); } TB_INFO("Ersten 10 Werte von pData1 vor Tausch"); for (int i = 0; i < 10; i++) { tbWriteToLog("Wert von Integer %d : %d\n",i ,pData1[i]); } TB_INFO("Ersten 10 Werte von pData2 vor Tausch"); for (int i = 0; i < 10; i++) { tbWriteToLog("Wert von Integer %d : %d\n",i ,pData2[i]); } // Zufallszahlen von pData1 und pData2 vertauschen memcpy(pTempD,pData2,tbMemGetSize(pData2)); memcpy(pData2,pData1,tbMemGetSize(pData1)); memcpy(pData1,pTempD,tbMemGetSize(pTempD)); TB_INFO("Ersten 10 Werte von pData1 nach Tausch"); for (int i = 0; i < 10; i++) { tbWriteToLog("Wert von Integer %d : %d\n",i ,pData1[i]); } TB_INFO("Ersten 10 Werte von pData2 nach Tausch"); for (int i = 0; i < 10; i++) { tbWriteToLog("Wert von Integer %d : %d\n",i ,pData2[i]); } // Speicher wieder freigeben TB_SAFE_MEMFREE(pData1); TB_SAFE_MEMFREE(pData2); TB_SAFE_MEMFREE(pTempD); |
Werbeanzeige