Latest web development tutorials

Vai puntatore del linguaggio

Go puntatore del linguaggio è facile da imparare, usare il puntatore del linguaggio Go possono più facilmente eseguire alcune operazioni.

Facciamo passo dopo passo per imparare la lingua puntatore Go.

Sappiamo tutti che la variabile è un segnaposto conveniente per gli indirizzi di memoria computer di riferimento.

Vai a prendere carattere lingua indirizzo è e, in una variabile prima di utilizzarla restituirà l'indirizzo di memoria variabile corrispondente.

L'esempio seguente mostra l'indirizzo della variabile nella memoria:

package main

import "fmt"

func main() {
   var a int = 10   

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

Eseguire i risultati di output di codice di cui sopra:

变量的地址: 20818a220

Ora che abbiamo capito quello che un indirizzo di memoria e come accedervi. Avanti, introdurremo puntatore.


Che cosa è un puntatore

Un puntatore può puntare a qualsiasi indirizzo di memoria variabile valore che indica il valore dell'indirizzo di memoria.

Come variabili e costanti, prima di utilizzare il puntatore è necessario dichiarare un puntatore. dichiarazione di puntatore nel seguente formato:

var var_name *var-type

var-tipo tipo di puntatore, nome_var è un nome di variabile puntatore, un asterisco viene utilizzato per specificare la variabile come un puntatore. Quanto segue è una dichiarazione puntatore valido:

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

In questo caso è un puntatore a int e il puntatore float32.


Come utilizzare il puntatore

Puntatori processo:

  • Definire una variabile puntatore.
  • variabile puntatore.
  • Il valore del puntatore di indirizzo punto di accesso variabile.

Davanti al tipo di puntatore aggiungere un asterisco (prefisso) per ottenere un puntatore punta al.

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 )
}

Esempi di attuazione dell'uscita sopra è:

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

Vai puntatore nullo

Quando, dopo un puntatore non è definito associato a nessuna variabile, il suo valore è pari a zero.

puntatore nullo è anche chiamato un puntatore nullo.

nullo nullo nel concetto e altre lingue, None, pari a zero, NULL, come tutti si riferiscono a zero o valori vuoti.

Una variabile puntatore viene comunemente abbreviato ptr.

Vedere i seguenti esempi:

package main

import "fmt"

func main() {
   var  ptr *int

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

L'output sopra esempio è:

ptr 的值为 : 0

Null giudizio puntatore:

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

Vai puntatore Altro

Avanti, introdurremo più lingue Vai applicazioni puntatori:

contenuto descrizione
Vai allineamento puntatore È possibile definire una matrice puntatore per memorizzare l'indirizzo
Vai puntatore a un puntatore Vai puntatore sostegno a un puntatore
Vai come un puntatore a funzione parametri passati Con riferimento o indirizzo al Senato, quando la chiamata di funzione può cambiare il suo valore