|
You last visited: Today at 19:37
Advertisement
[C++]Adressen & Pointer!
Discussion on [C++]Adressen & Pointer! within the General Coding forum part of the Coders Den category.
12/22/2011, 14:22
|
#1
|
elite*gold: 0
Join Date: Sep 2010
Posts: 96
Received Thanks: 42
|
[C++]Adressen & Pointer!
Heyho meine Lieben! Ich hab ein gewisses Problem.
Ich weiß wie man bestimmten Adressen oder Werten Pointer zuweißt. Ein klassisches Beispiele wäre ja:
int var = 100;
int* PointerVar = &var;
Oder für Adressen casten:
DWORD* Pointer = (DWORD*)0xADRESSE;
Sowas halt. Ich hab aber ein anderes Problem, man kann es hier erkennen:
Ich habe die Adresse 0x18040000, die immer so vorhanden ist! (Das gut=) ).
Jetzt addiere ich halt den Offset 0x2C dazu, um eine neue Adresse zu erhalten. Nur dieses Mal ist die Adresse die Adresse vom Pointer selbst! Und dieser zeigt dann auf eine andere Adresse und immer so weiter. Meine Frage:
Wie setze ich das in C++ um? Wie weise ich einem Pointer seine Adresse zu? Geht das? Muss es anscheinend ja^^
Vielen Dank für eure Hilfen!
Fg DreamStyler
|
|
|
12/22/2011, 15:01
|
#2
|
elite*gold: 50
Join Date: Mar 2010
Posts: 1,373
Received Thanks: 521
|
int* Base = reinterpret_cast<int*> 0xBLABLA
int* erste = reinterpret_cast<int*> *Base + Offset1
int* zweite = reinterpret_cast<int*> *erste + Offset2
...
Zu dem Wert der vorherigen adresse wird ein Offset addiert. Die Summe ist die nächste Addresse, ihrem Wert wird wiederum ein Offset zugefügt und so weiter
|
|
|
12/22/2011, 19:26
|
#3
|
elite*gold: 0
Join Date: Sep 2010
Posts: 96
Received Thanks: 42
|
Quote:
Originally Posted by jacky919
int* Base = reinterpret_cast<int*> 0xBLABLA
int* erste = reinterpret_cast<int*> *Base + Offset1
int* zweite = reinterpret_cast<int*> *erste + Offset2
...
Zu dem Wert der vorherigen adresse wird ein Offset addiert. Die Summe ist die nächste Addresse, ihrem Wert wird wiederum ein Offset zugefügt und so weiter
|
Vielen Dank für deine Antwort! Aber das löst mein Problem nicht. Du weißt nem Pointer im Prinzip nen anderen zu und immer so weiter. Das kann ich auch, nur ich will die Speicheradresse, die der Pointer selber besitzt, variieren können. Ich weiß sonst nicht, wie ich auf das Ergebnis kommen soll. Die zweite Adresse ist ja nicht immer 27204A14.
|
|
|
12/22/2011, 20:21
|
#4
|
elite*gold: 115
Join Date: Oct 2007
Posts: 9,390
Received Thanks: 12,345
|
Quote:
Originally Posted by DreamStyler
Wie setze ich das in C++ um? Wie weise ich einem Pointer seine Adresse zu? Geht das? Muss es anscheinend ja^^
|
Code:
#include <stdio.h>
int *i = (int *)&i;
int main(int argc, char *argv[])
{
printf("i = %p\n*i = %x\n", (void *)i, *i);
}
|
|
|
12/22/2011, 20:33
|
#5
|
elite*gold: 0
Join Date: May 2009
Posts: 827
Received Thanks: 471
|
Quote:
|
Wie setze ich das in C++ um?
|
Quote:
#include <stdio.h>
int *i = (int *)&i;
int main(int argc, char *argv[])
{
printf("i = %p\n*i = %x\n", (void *)i, *i);
}
|
Finde den Fehler.
|
|
|
12/22/2011, 20:38
|
#6
|
elite*gold: 50
Join Date: Mar 2010
Posts: 1,373
Received Thanks: 521
|
Quote:
Originally Posted by DreamStyler
Vielen Dank für deine Antwort! Aber das löst mein Problem nicht. Du weißt nem Pointer im Prinzip nen anderen zu und immer so weiter. Das kann ich auch, nur ich will die Speicheradresse, die der Pointer selber besitzt, variieren können. Ich weiß sonst nicht, wie ich auf das Ergebnis kommen soll. Die zweite Adresse ist ja nicht immer 27204A14.
|
Das * vor dem Pointer dereferenziert ihn. Dadurch steht da eigentlich der Wert der Addresse worauf der Pointer verweist.
@xNopex: Ja, das ist mal ein C++ wie es im Buche steht... xD
|
|
|
12/22/2011, 20:53
|
#7
|
elite*gold: 115
Join Date: Oct 2007
Posts: 9,390
Received Thanks: 12,345
|
Tut mir Leid, hab ganz vergessen dass C-Style in C++ strikt verboten ist.
|
|
|
12/22/2011, 21:10
|
#8
|
elite*gold: 0
Join Date: May 2009
Posts: 827
Received Thanks: 471
|
Sry aber das hat mit C++ gar nichts mehr am Hut. Das ist reines C. Falscher Header, für Ausgaben gibts cout, falscher Cast... Das ist einfach kein C++.
|
|
|
12/22/2011, 21:51
|
#9
|
elite*gold: 0
Join Date: Feb 2011
Posts: 1,206
Received Thanks: 736
|
das ist leider nicht falsch mein lieber xNopex, sondern einfach nur C.
da c++ die meisten C befehle zulässt ist daran nichts aber auch rein garnichts "falsch".
höchstens schlechter stil, wenn man ansonsten c++ stil verwendet, aber wenn er hier C-style code postet nehme ich an, dass er ansonsten auch c-style bevorzugt, was schließlich nicht verboten ist.
|
|
|
12/22/2011, 23:57
|
#10
|
elite*gold: 42
Join Date: Jun 2008
Posts: 5,425
Received Thanks: 1,888
|
Wenn C++-Code verlangt wird ist das falsch. :>
|
|
|
12/23/2011, 14:15
|
#11
|
elite*gold: 115
Join Date: Oct 2007
Posts: 9,390
Received Thanks: 12,345
|
Quote:
Originally Posted by DreamStyler
Is ja schön und gut, dass du dich über andere lustig machen kannst, aber ich wäre eher an einer Lösung meines Problems interessiert :$. Langsam gehen mir die Ideen dazu aus.
Fg
|
Ich habe die Lösung bereits gepostet.
Veränder halt den Header, den Cast und mache die Ausgabe über nen Stream, wenn du unbedingt 100% C++ haben willst.
|
|
|
12/23/2011, 14:52
|
#12
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
|
Quote:
Originally Posted by DreamStyler
Vielen Dank für deine Antwort! Aber das löst mein Problem nicht. Du weißt nem Pointer im Prinzip nen anderen zu und immer so weiter. Das kann ich auch, nur ich will die Speicheradresse, die der Pointer selber besitzt, variieren können. Ich weiß sonst nicht, wie ich auf das Ergebnis kommen soll. Die zweite Adresse ist ja nicht immer 27204A14.
|
Das ist doch Unsinn. Du hast doch die Adresse in deinem Pointer, die liest du aus und addierst das Offset dazu, an der resultierenden Adresse ist der nächste Pointer.
Du musst doch nicht die Position deiner eigenen Variable im Speicher ändern o.ô
|
|
|
12/23/2011, 18:51
|
#13
|
elite*gold: 0
Join Date: Sep 2010
Posts: 96
Received Thanks: 42
|
Quote:
Originally Posted by MrSm!th
Das ist doch Unsinn. Du hast doch die Adresse in deinem Pointer, die liest du aus und addierst das Offset dazu, an der resultierenden Adresse ist der nächste Pointer.
Du musst doch nicht die Position deiner eigenen Variable im Speicher ändern o.ô
|
Danke für die Antwort! Aber ganz einleuchten tut mir das nicht. Kannst du mir ein Beispiel bezüglich meines Problems geben? Wäre echt klasse!
Fg
|
|
|
12/23/2011, 20:06
|
#14
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
|
Quote:
Originally Posted by jacky919
int* Base = reinterpret_cast<int*> 0xBLABLA
int* erste = reinterpret_cast<int*> *Base + Offset1
int* zweite = reinterpret_cast<int*> *erste + Offset2
...
Zu dem Wert der vorherigen adresse wird ein Offset addiert. Die Summe ist die nächste Addresse, ihrem Wert wird wiederum ein Offset zugefügt und so weiter
|
^da
|
|
|
12/23/2011, 20:18
|
#15
|
elite*gold: 0
Join Date: Sep 2010
Posts: 96
Received Thanks: 42
|
Hatte ich bereits ausprobiert, funkt leider auch nicht :/.
Fg
|
|
|
 |
|
Similar Threads
|
[TuT] mit cheat Engine Adressen und Pointer finden auf 4story offi
01/10/2012 - 4Story Hacks, Bots, Cheats & Exploits - 14 Replies
mit cheat Engine Adressen finden
Also erst mal will ich sagen das alle die jetzt meinen das ich ein wichtiges Geheimniss ausplaudere die haben sich aber sehr stark geirrt
Wenn man einen thread mal gelesen hätte wüsste man es aber anscheinen hat das keiner gemacht
Aber egal jetzt zeige ich euch wie es geht
Und los geht's:
- downloaded euch cheat Engine 6.1 runter (gebt dazu einfach bei google ein cheat Engine 6.1 Download dann kommen Lehrer tausend Seiten ihr könnt dann ganz...
|
[Frage] Adressen / Pointer suchen...
01/07/2011 - AutoIt - 6 Replies
Mal ne richtig plöde Frage...
Also, ich würde gerne wissen,
1. Kann man CE undetected / hidden machen, so dass es nicht von Hackshield etc. erkannt wird und trotzdem noch funktioniert?
2. Gibt es noch ein Prog außer CE mit dem man .bin o.Ä. und nicht nur .exe nach Adressen und Pointern durchsuchen kann?
3. Mit welcher Programmiersprache wäre es möglich selbst so ein Programm zu schreiben (AutoIt kann ich gut, damit gehts aber nicht, C++ kann ich weniger gut, damit gehts warscheinlich, weis...
|
Metin2 Pointer Adressen
12/19/2010 - Metin2 Hacks, Bots, Cheats, Exploits & Macros - 13 Replies
Da ich in meinem kleinen Hack einen Fehler entdeckt habe, werde ich mal alle mir bekannten Server-/Player Pointer Adressen hier posten.
Ich möchte hier kein TUT machen, wie man diese benutzt. Wer es wissen möchte kann Google fragen.
Einige werden wissen was man damit anfangen kann. Um es kurz zu fassen: Es sind alle mir bekannten Pointeradressen die man für einen Multihack benötigt.
Wer klug genug ist hiermit was anzufangen, winnt :D Damit kann man einen genialen Hack machen, wozu ich...
|
Frage: Wie findet man zB UG Pointer?Speed pointer?
03/30/2010 - Kal Online - 2 Replies
kann mir einer sagen wie man UG/Speed pointer finden kann usw^^´ß#
|
All times are GMT +1. The time now is 19:37.
|
|