C Anfänger kommt nicht weiter
noir 25.11.2012 - 22:47 6510 32
icy
OC Addicted
|
Bearbeitet von icy am 10.03.2013, 21:08
|
noir
Overclocking Team Member
|
gleich nochmals danke für eure Hilfe und Tipps
ganz verstanden hab ich das zwar noch nicht, aber bei der Version von icy hab ich gesehen wo mein Fehler war und das Funktioniert dann auch Sprich ich speichere das Lokale Array in ein Globales und greife darauf dann über einen Pointer zu. Funktioniert, scheint mir aber sehr umständlich zu sein
Dem Ansatz von Caption konnte ich nicht umsetzen (da werde ich nur so mit Fehlern überhäuft)
Ich werde es euch wissen lassen sobald ich es zusammengebracht habe
Danke nochmals
|
icy
OC Addicted
|
ptr[0] = i[0]; Was passiert hier? Wir speichern den Wert von i[0] in ptr[0]. Warum? Weil sonst i[0] bzw. der Wert von i[0] verloren geht. (scope) Du koenntest natuerlich direkt die Werte in dein globales Array speichern (wenn du sie beim ersten mal einliest). //////////////////////////////////////////////////////////////////////////////////// bin3 = *(ptr+2) * zweierpotenz; Was passiert hier? Wir dereferenzieren(der Stern *) die Pointer Adresse (ptr+2) und bekommen dadurch den Wert von der Pointer Adresse. Man haette natuerlich auch sofort ptr[2] schreiben koennen. //////////////////////////////////////////////////////////////////////////////////// Am besten ausprobieren: printf("pointer address %p\n", (ptr+0)); printf("integer %i\n", *(ptr+0)); Pointer Uebergabe(caption): http://pastebin.com/j1RVmWCg
Bearbeitet von icy am 12.03.2013, 17:02
|