Heim Backend-Entwicklung C#.Net-Tutorial Was ist der Unterschied zwischen Referenz und Zeiger?

Was ist der Unterschied zwischen Referenz und Zeiger?

Jul 18, 2020 pm 03:43 PM
引用 指针

Der Unterschied zwischen einer Referenz und einem Zeiger ist: 1. Das Programm reserviert einen Speicherbereich für die Zeigervariable, nicht jedoch für die Referenz. 2. Die Referenz wird initialisiert, wenn sie definiert wird, und kann später nicht geändert werden , während sich der Zeiger ändern kann. 3. Zeiger müssen bei Verwendung mit „*“ hinzugefügt werden, und Referenzen können direkt verwendet werden.

Was ist der Unterschied zwischen Referenz und Zeiger?

Zeiger und Referenzen sind Adresskonzepte. Ein Zeiger zeigt auf einen Speicherabschnitt, und sein Inhalt ist die Adresse des gezeigten Speichers. Eine Referenz ist ein Alias ​​für ein bestimmtes Stück Erinnerung.

(Empfohlenes Tutorial: C-Sprach-Tutorial )

Detaillierte Einführung:

Das Programm reserviert einen Speicherbereich für Zeigervariablen, jedoch nicht für Referenzen.

Wenn Sie Zeiger verwenden, fügen Sie * vor, und Referenzen können direkt verwendet werden.

Die Referenz wird beim Definieren initialisiert und kann später nicht geändert werden. Das heißt, das referenzierte Objekt kann nicht geändert werden, aber das Objekt des Zeigers kann geändert werden.

Es gibt keinen Nullverweis, aber einen Nullzeiger. Dies macht Code, der Referenzen verwendet, effizienter als die Verwendung von Zeigern. Denn es besteht keine Notwendigkeit, die Gültigkeit einer Referenz vor der Verwendung zu testen. Im Gegensatz dazu sollten Zeiger immer getestet werden, um zu verhindern, dass sie null sind.

Durch die Verwendung von „sizeof“ für die Referenz wird die Größe der Variablen ermittelt, und durch die Verwendung von „sizeof“ für den Zeiger wird die Größe der Adresse der Variablen ermittelt.

Theoretisch gibt es keine Begrenzung für die Anzahl der Zeigerebenen, es gibt jedoch nur eine Referenzebene. Das heißt, es gibt keinen Verweis auf eine Referenz, aber es kann einen Zeiger auf einen Zeiger geben.

int **p //合法
int &&p //非法
Nach dem Login kopieren

++-Referenz und ++-Zeiger haben unterschiedliche Auswirkungen.

Beispielsweise spiegelt die Operation an der Referenz direkt das angezeigte Objekt wider, anstatt den Zeiger zu ändern, und die Operation am Zeiger bewirkt, dass der Zeiger auf das nächste Objekt zeigt als den spitzen Inhalt des Objekts zu ändern.

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen Referenz und Zeiger?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So verwenden Sie Anführungszeichen in Apple Notes So verwenden Sie Anführungszeichen in Apple Notes Oct 12, 2023 pm 11:49 PM

In iOS 17 und macOS Sonoma hat Apple neue Formatierungsoptionen für Apple Notes hinzugefügt, darunter Anführungszeichen und einen neuen Monostyle-Stil. Hier erfahren Sie, wie Sie sie verwenden. Mit zusätzlichen Formatierungsoptionen in Apple Notes können Sie Ihren Notizen jetzt Anführungszeichen hinzufügen. Das Format der Blockzitate erleichtert das visuelle Versetzen von Textabschnitten mithilfe der Anführungszeichenleiste links vom Text. Tippen/klicken Sie einfach auf die Formatschaltfläche „Aa“ und wählen Sie die Option „Blockzitat“ aus, bevor Sie etwas eingeben oder wenn Sie sich in der Zeile befinden, die Sie in ein Blockzitat umwandeln möchten. Diese Option gilt für alle Texttypen, Stiloptionen und Listen, einschließlich Checklisten. Im selben Menü „Format“ finden Sie die neue Option „Einzelstil“. Dies ist eine Überarbeitung der vorherigen „gleichbreiten“

C++-Kompilierungsfehler: undefinierte Referenz, wie kann man ihn lösen? C++-Kompilierungsfehler: undefinierte Referenz, wie kann man ihn lösen? Aug 21, 2023 pm 08:52 PM

C++ ist eine beliebte Programmiersprache, aber während der Verwendung tritt häufig der Kompilierungsfehler „undefinierte Referenz“ auf, der große Probleme bei der Programmentwicklung mit sich bringt. In diesem Artikel wird die Lösung des Fehlers „Undefinierte Referenz“ sowohl hinsichtlich der Ursache als auch der Lösung erläutert. 1. Fehlerursache Wenn der C++-Compiler eine Quelldatei kompiliert, wird diese in zwei Phasen unterteilt: die Kompilierungsphase und die Verknüpfungsphase. Die Kompilierungsphase wandelt den Quellcode in den Quelldateien in Assemblercode um, während die Verknüpfungsphase verschiedene Quelldateien zu einer ausführbaren Datei kombiniert.

Wie gehen generische Funktionen mit Zeigern und Referenztypen in Golang um? Wie gehen generische Funktionen mit Zeigern und Referenztypen in Golang um? Apr 16, 2024 pm 04:06 PM

Wenn eine generische Funktion Zeigertypen in Go verarbeitet, erhält sie einen Verweis auf die ursprüngliche Variable, sodass der Variablenwert geändert werden kann. Referenztypen werden bei der Übergabe kopiert, sodass die Funktion den ursprünglichen Variablenwert nicht ändern kann. Zu den praktischen Beispielen gehört die Verwendung generischer Funktionen zum Vergleichen von Zeichenfolgen oder Zahlensegmenten.

So aktivieren oder deaktivieren Sie die verbesserte Zeigergenauigkeit unter Windows 11 So aktivieren oder deaktivieren Sie die verbesserte Zeigergenauigkeit unter Windows 11 Sep 27, 2023 pm 12:21 PM

Die Zeigerpräzision ist in Situationen von entscheidender Bedeutung, in denen eine höhere Präzision und eine bessere Cursorpositionierung erforderlich sind. Es ist in Windows 11 standardmäßig aktiviert, aber Sie müssen möglicherweise die erweiterte Zeigergenauigkeit für eine bessere Leistung neu konfigurieren. Beispielsweise möchten Sie möglicherweise nicht, dass Windows die Zeigergeschwindigkeit automatisch neu anpasst, sondern bei ähnlichen Mausbewegungen stattdessen eine feste Distanz zurücklegt. Was ist eine verbesserte Zeigergenauigkeit? Die verbesserte Zeigerpräzision passt an, wie weit sich der Cursor bewegt, je nachdem, wie schnell sich die Maus bewegt. Je schneller sich also die Maus bewegt, desto größer ist die zurückgelegte Strecke. Für diejenigen, die sich fragen, was Windows Enhanced Pointer Precision bewirkt: Es ändert die Mausempfindlichkeit. Wie schalte ich die verbesserte Zeigergenauigkeit in Windows 11 ein oder aus? 1. Drücken Sie durch Einstellungen

Welche Vorteile haben C++-Funktionen, die Referenztypen zurückgeben? Welche Vorteile haben C++-Funktionen, die Referenztypen zurückgeben? Apr 20, 2024 pm 09:12 PM

Zu den Vorteilen von Funktionen, die Referenztypen in C++ zurückgeben, gehören: Leistungsverbesserungen: Durch die Übergabe als Referenz wird das Kopieren von Objekten vermieden, wodurch Speicher und Zeit gespart werden. Direkte Änderung: Der Aufrufer kann das zurückgegebene Referenzobjekt direkt ändern, ohne es neu zuzuweisen. Einfachheit des Codes: Die Übergabe als Referenz vereinfacht den Code und erfordert keine zusätzlichen Zuweisungsvorgänge.

Erweiterte Methoden vom Typ Golang-Zeiger zur Verbesserung der Programmierkenntnisse Erweiterte Methoden vom Typ Golang-Zeiger zur Verbesserung der Programmierkenntnisse Apr 07, 2024 pm 06:42 PM

Der Zeigertyp-Ansatz ist in der Go-Sprache verfügbar und ermöglicht es Ihnen, eine Funktion vom Zeigertyp zu definieren, um den Wert zu ändern, auf den gezeigt wird, ohne den Zeiger explizit in der Methodensignatur zu übergeben. Dies sorgt für Einfachheit und Effizienz des Codes, da Copy-by-Value-Durchgänge nicht kopiert werden müssen. Die Syntax der Zeigertypmethode lautet: typeTypeName*Type\nfunc(t*TypeName)MethodName(). Um Zeigertypmethoden zu verwenden, erstellen Sie einen Zeiger auf eine Instanz des Typs und verwenden diesen Zeiger dann zum Aufrufen der Methode. Zu den Vorteilen von Methoden vom Zeigertyp gehören die Einfachheit, Effizienz und Modifizierbarkeit des Codes. Es ist zu beachten, dass die Zeigertypmethode nur für Zeigertypen verwendet werden kann und Sie bei der Verwendung vorsichtig sein müssen, da der Strukturwert, auf den verwiesen wird, möglicherweise versehentlich angezeigt wird

Wie verwende ich C++-Referenz- und Zeigerparameterübergabe? Wie verwende ich C++-Referenz- und Zeigerparameterübergabe? Apr 12, 2024 pm 10:21 PM

Referenzen und Zeiger sind in C++ beide Methoden zur Übergabe von Funktionsparametern, es gibt jedoch Unterschiede. Eine Referenz ist ein Alias ​​für eine Variable. Durch Ändern der Referenz wird die ursprüngliche Variable geändert, während der Zeiger die Adresse der Variablen speichert. Wenn Sie sich für die Verwendung einer Referenz oder eines Zeigers entscheiden, müssen Sie Faktoren berücksichtigen, z. B. ob die ursprüngliche Variable geändert werden muss, ob ein Nullwert übergeben werden muss, und Leistungsaspekte.

Tiefes Verständnis von const in der C-Sprache Tiefes Verständnis von const in der C-Sprache Feb 18, 2024 pm 12:56 PM

Ausführliche Erklärung und Codebeispiele von const in C. In der C-Sprache wird das Schlüsselwort const zum Definieren von Konstanten verwendet, was bedeutet, dass der Wert der Variablen während der Programmausführung nicht geändert werden kann. Mit dem Schlüsselwort const können Variablen, Funktionsparameter und Funktionsrückgabewerte geändert werden. Dieser Artikel bietet eine detaillierte Analyse der Verwendung des Schlüsselworts const in der C-Sprache und stellt spezifische Codebeispiele bereit. const modifizierte Variable Wenn const zum Ändern einer Variablen verwendet wird, bedeutet dies, dass die Variable eine schreibgeschützte Variable ist und nicht geändert werden kann, sobald ihr ein Wert zugewiesen wurde. Zum Beispiel: constint

See all articles