Vai - Tipi di dati
Nel linguaggio di programmazione Go, i tipi di dati si riferiscono a un ampio sistema utilizzato per dichiarare variabili o funzioni di diversi tipi. Il tipo di variabile determina quanto spazio occupa nella memoria e come viene interpretata la sequenza di bit memorizzata.
I tipi in Go possono essere classificati come segue:
Sr.No. | Tipi e descrizione |
---|---|
1 | Boolean types Sono di tipo booleano e sono costituiti dalle due costanti predefinite: (a) true (b) false |
2 | Numeric types Sono ancora tipi aritmetici e rappresentano a) tipi interi o b) valori in virgola mobile in tutto il programma. |
3 | String types Un tipo stringa rappresenta l'insieme di valori stringa. Il suo valore è una sequenza di byte. Le stringhe sono tipi immutabili che una volta create, non è possibile modificare il contenuto di una stringa. Il tipo di stringa predichiarato è stringa. |
4 | Derived types Includono (a) tipi di puntatore, (b) tipi di array, (c) tipi di struttura, (d) tipi di unione e (e) tipi di funzione f) tipi di sezioni g) tipi di interfaccia h) tipi di mappa i) tipi di canale |
I tipi di array e i tipi di struttura sono indicati collettivamente come aggregate types. Il tipo di una funzione specifica l'insieme di tutte le funzioni con gli stessi parametri e tipi di risultati. Discuteremo i tipi di base nella sezione seguente, mentre altri tipi saranno trattati nei prossimi capitoli.
Tipi interi
I tipi interi indipendenti dall'architettura predefiniti sono:
Sr.No. | Tipi e descrizione |
---|---|
1 | uint8 Intero a 8 bit senza segno (da 0 a 255) |
2 | uint16 Intero a 16 bit senza segno (da 0 a 65535) |
3 | uint32 Intero a 32 bit senza segno (da 0 a 4294967295) |
4 | uint64 Intero a 64 bit senza segno (da 0 a 18446744073709551615) |
5 | int8 Intero a 8 bit con segno (da -128 a 127) |
6 | int16 Intero a 16 bit con segno (da -32768 a 32767) |
7 | int32 Intero a 32 bit con segno (da -2147483648 a 2147483647) |
8 | int64 Intero a 64 bit con segno (da -9223372036854775808 a 9223372036854775807) |
Tipi fluttuanti
I tipi di float predefiniti indipendenti dall'architettura sono:
Sr.No. | Tipi e descrizione |
---|---|
1 | float32 Numeri a virgola mobile a 32 bit IEEE-754 |
2 | float64 Numeri in virgola mobile a 64 bit IEEE-754 |
3 | complex64 Numeri complessi con float32 parti reali e immaginarie |
4 | complex128 Numeri complessi con parti reali e immaginarie float64 |
Il valore di un intero n bit è n bit ed è rappresentato utilizzando operazioni aritmetiche in complemento a due.
Altri tipi numerici
C'è anche un insieme di tipi numerici con dimensioni specifiche dell'implementazione:
Sr.No. | Tipi e descrizione |
---|---|
1 | byte uguale a uint8 |
2 | rune uguale a int32 |
3 | uint 32 o 64 bit |
4 | int stesse dimensioni di uint |
5 | uintptr un numero intero senza segno per memorizzare i bit non interpretati di un valore del puntatore |