Zeiger sind wahrscheinlich die schwierigste Konzept, das Sie in einem Anfang C Klasse begegnen werden . Verstehen C Zeiger ist viel einfacher, wenn Sie eine klare Vorstellung davon, wie Computer speichern Informationen haben - und eine klare Vorstellung darüber, wie die Adressen der Speicherplätze beziehen sich auf die Daten , die in diesen Speicherplätzen abgelegt werden. Dies liegt daran, alles über Pointer -Adressen sind . Verstehen Sie, wie Adressierung Werke macht es einfacher zu verstehen, wie Zeiger funktionieren. Anleitung
1
zuerst lernen, wie Adresse , Typ und Werte zusammen arbeiten im Speicher des Computers . Jede Variable , die Sie in Ihrem C-Programm wird eine Art und eine Adresse im Speicher. Angenommen, X ist ein Doppelwort ( der Typ ) , der aufnimmt Speicherplätze 1000 und 1001 . Die Adresse X (geschrieben und X) beträgt 1000 , das System weiß, dass X ein Doppelwort ist , so dass der Wert von X ( X geschrieben ) wird in 1000 und 1001 sein . X ist der Name einer Box, die derzeit (beispielsweise) 15 , und dies kann sich ändern. Die Adresse des X 1000 , und das wird wahrscheinlich nicht ändern.
2
Erfahren Sie, was es bedeutet, wenn Speicherplätze die Adressen der anderen Speicherplätze enthalten . Der C-Compiler weiß, wann eine Variable ist ein Zeiger und welche Art von Gegenständen es weist auf . Zum Beispiel, " double * P; " ist die Aussage, dass P ein Zeiger sein erklärt . Dies bedeutet, dass das Symbol P mit einem Speicherplatz (sagen wir 2000) und das System weiß , dass die Dinge in Position 2000 ( Pointer sind nur ein Wort lang) Adressen zugeordnet ist. Nun könnte man sagen: " P = &x; " und die Ergebnisse würden bis 1000 ( die Adresse X) in Computer Speicherstelle 2000 setzen . Wenn Sie * P ( P , was zu Punkte) nun ausgewertet , würden Sie 15 , weil P Punkte auf 15 erhöht. P enthält die Adresse X , aber es weist auf den Inhalt der X.
3
Erfahren Sie jeden neuen Konzept gründlich , bevor Sie mit der nächsten . Jede neue Verwendung von Zeigern wird " syntaktische Zucker " sein , um die Sprache einfacher zu bedienen. Wenn Sie eine klare Vorstellung darüber, wie Adressen , Typen und Speicher zusammen arbeiten , haben Sie das solide Fundament benötigt, um die syntaktische Zucker zu verstehen.