Latest web development tutorials

Go Sprache Zeiger

Go Zeiger Sprache ist leicht zu erlernen, verwenden Sie den Zeiger Go Sprache mehr kann leicht einige Aufgaben ausführen.

Lassen Sie uns Schritt für Schritt die Sprache Go Zeiger zu lernen.

Wir alle wissen, dass die Variable eine bequeme Platzhalter für Referenzcomputer Speicheradressen ist.

Go-Adresse Sprache Charakter holen ist und in eine Variable, bevor sie mit den entsprechenden variablen Speicheradresse zurück.

Das folgende Beispiel zeigt die variable Adresse im Speicher:

package main

import "fmt"

func main() {
   var a int = 10   

   fmt.Printf("变量的地址: %x\n", &a  )
}

Führen Sie die oben genannten Code Ausgabeergebnisse:

变量的地址: 20818a220

Jetzt, da wir verstehen, was eine Speicheradresse und wie sie zuzugreifen. Als nächstes werden wir Zeiger vorstellen.


Was ist ein Zeiger

Ein Zeiger kann auf jeden Variablenwert Speicheradresse verweisen sie auf den Wert der Speicheradresse verweist.

Wie Variablen und Konstanten, bevor Sie den Zeiger verwenden, müssen Sie einen Zeiger zu erklären. Pointer Erklärung in folgendem Format:

var var_name *var-type

var-type Zeigertyp, var_name ist ein Zeiger Variablennamen, ein Sternchen verwendet wird, die Variable als Zeiger zu spezifizieren. Hier finden Sie eine gültige Zeigerdeklaration:

var ip *int        /* 指向整型*/
var fp *float32    /* 指向浮点型 */

In diesem Fall ist es ein Zeiger auf int und float32 Zeiger.


Wie Sie den Zeiger zu verwenden,

Pointers-Prozess:

  • Definieren Sie eine Zeigervariable.
  • Pointer-Variable.
  • Der Wert des Adresszeigers variablen Zugriffspunkt.

Vor dem Zeigertyp ein Sternchen (Präfix) fügen Sie ein Zeiger auf zu erhalten.

package main

import "fmt"

func main() {
   var a int= 20   /* 声明实际变量 */
   var ip *int        /* 声明指针变量 */

   ip = &a  /* 指针变量的存储地址 */

   fmt.Printf("a 变量的地址是: %x\n", &a  )

   /* 指针变量的存储地址 */
   fmt.Printf("ip 变量的存储地址: %x\n", ip )

   /* 使用指针访问值 */
   fmt.Printf("*ip 变量的值: %d\n", *ip )
}

Beispiele für die Durchführung der oben genannten Ausgabe ist:

a 变量的地址是: 20818a220
ip 变量的存储地址: 20818a220
*ip 变量的值: 20

Zum Nullzeiger

Wenn nach ein Zeiger definiert ist keiner Variablen zugewiesen, ist sein Wert gleich Null.

Null-Zeiger wird auch ein Null-Zeiger genannt.

null null in Konzept und anderen Sprachen, None, Null, NULL, wie beziehen sich alle auf Null oder Leerwerte.

Eine Zeigervariable wird allgemein abgekürzt ptr.

Siehe folgende Beispiele:

package main

import "fmt"

func main() {
   var  ptr *int

   fmt.Printf("ptr 的值为 : %x\n", ptr  )
}

Das obige Beispiel Ausgabe lautet:

ptr 的值为 : 0

Null-Zeiger-Urteil:

if(ptr != nil)     /* ptr 不是空指针 */
if(ptr == nil)    /* ptr 是空指针 */

Gehe Zeiger Mehr

Als nächstes werden wir weitere Sprachen gehen Zeiger vorstellen Anwendungen:

Inhalt Beschreibung
Gehen Zeigerfeld Sie können einen Zeiger Array definieren Adresse zu speichern
Gehen Zeiger auf einen Zeiger Gehen Stütz Zeiger auf einen Zeiger
Gehen Sie wie ein Funktionszeiger - Parameter übergeben Unter Bezugnahme oder Adresse der Senat, wenn der Funktionsaufruf seinen Wert zu ändern