pointer auf Adresse

Gast #5842453
Mahlzeit,
ich möchte mir werte von einem Adressbereich holen. Dazu habe ich eine 
Funktion, die die Adresse als Pointer haben möchte.
Für eine einzelne Adresse funktioniert das auch ganz gut.
1
for(counter=0; counter<length; counter++)
2
{
3
  memory_get_data(&buffer, &startAddress);
4
}

hier wird mir der wert, welcher in startAddress steht in buffer 
geschrieben.

1
for(counter=0; counter<length; counter++)
2
{
3
  memory_get_data(&buffer, &(startAddress+counter));
4
}
Das funktioniert aber nicht, da (startAddress+counter) ein ergebnis ist 
und keine Adresse mehr.

Wie kann man es am besten machen?
Gast #5842458
Nachtrag:
Ist aber Dreck, da es abhängig davon ist wie breit dein Datum ist.
Müsstes also n*counter machen.

oder gleich richtig:

<datentyp> * ptr = &startAddress;

ptr + counter
Moderator #5842575
Felix schrieb:
> for(counter=0; counter<length; counter++)
> {
>   memory_get_data(&buffer, &startAddress);
> }

Sind da nicht ein paar &-Zeichen zuviel?

Welchen Datentyp haben buffer und startAddress?

Und wie sieht die Funktion memory_get_data aus?

Davon hängt es ab, wie der Aufruf von memory_get_data tatsächlich
aussehen muss. Evtl. ist auch einfach
1
  memory_get_data(buffer, startAddress);
2
  memory_get_data(buffer, startAddress+counter);

der richtige Weg.
Gast #5842697
GEKU schrieb:
> memory_get_data(&buffer, &startAddress, block_size);

Sorry ich habe übersehen, das die Funktion memor_get_data vorgegeben 
ist.

Interessant wäre der Prototyp der Funktion.

Z. B.   void memory_get_data(char *pBuffer, int startAddress);

dann wäre Startaddress kein Zeiger, sondern ein Adresswert,  der kein & 
benötigt. Man könnte man counter ohne weiters dazuzählen, da counter 
ebenfalls vom Typ int ist.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 7 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.