Aller - Constantes

Les constantes font référence à des valeurs fixes que le programme ne peut pas modifier lors de son exécution. Ces valeurs fixes sont également appeléesliterals.

Les constantes peuvent être de l'un des types de données de base comme une constante entière, une constante flottante, une constante de caractère ou une chaîne littérale . Il existe également des constantes d'énumération.

Les constantes sont traitées comme des variables régulières sauf que leurs valeurs ne peuvent pas être modifiées après leur définition.

Littéraux entiers

Un littéral entier peut être une constante décimale, octale ou hexadécimale. Un préfixe spécifie la base ou la base: 0x ou 0X pour hexadécimal, 0 pour octal et rien pour décimal.

Un littéral entier peut également avoir un suffixe qui est une combinaison de U et L, pour unsigned et long, respectivement. Le suffixe peut être en majuscules ou en minuscules et peut être dans n'importe quel ordre.

Voici quelques exemples de littéraux entiers -

212         /* Legal */
215u        /* Legal */
0xFeeL      /* Legal */
078         /* Illegal: 8 is not an octal digit */
032UU       /* Illegal: cannot repeat a suffix */

Voici d'autres exemples de différents types de littéraux entiers -

85         /* decimal */
0213       /* octal */
0x4b       /* hexadecimal */
30         /* int */
30u        /* unsigned int */
30l        /* long */
30ul       /* unsigned long */

Littéraux à virgule flottante

Un littéral à virgule flottante a une partie entière, une virgule décimale, une partie fractionnaire et une partie exposant. Vous pouvez représenter des littéraux à virgule flottante sous forme décimale ou exponentielle.

Lors de la représentation sous forme décimale, vous devez inclure la virgule décimale, l'exposant ou les deux et, lors de la représentation sous forme exponentielle, vous devez inclure la partie entière, la partie fractionnaire ou les deux. L'exposant signé est introduit par e ou E.

Voici quelques exemples de littéraux à virgule flottante -

3.14159       /* Legal */
314159E-5L    /* Legal */
510E          /* Illegal: incomplete exponent */
210f          /* Illegal: no decimal or exponent */
.e55          /* Illegal: missing integer or fraction */

Séquence d'échappement

Lorsque certains caractères sont précédés d'une barre oblique inverse, ils auront une signification particulière dans Go. Ceux-ci sont connus sous le nom de codes de séquence d'échappement qui sont utilisés pour représenter une nouvelle ligne (\ n), une tabulation (\ t), un retour arrière, etc. Ici, vous avez une liste de certains de ces codes de séquence d'échappement -

Séquence d'échappement Sens
\\ \ personnage
\ ' ' personnage
\ " " personnage
\? ? personnage
\une Alerte ou cloche
\ b Retour arrière
\F Saut de formulaire
\ n Nouvelle ligne
\ r Retour chariot
\ t Onglet horizontal
\ v Onglet vertical
\ ooo Numéro octal de un à trois chiffres
\ xhh. . . Nombre hexadécimal d'un ou plusieurs chiffres

L'exemple suivant montre comment utiliser \t dans un programme -

package main

import "fmt"

func main() {
   fmt.Printf("Hello\tWorld!")
}

Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant -

Hello World!

Littéraux de chaîne dans Go

Les chaînes littérales ou les constantes sont placées entre guillemets doubles "". Une chaîne contient des caractères similaires aux littéraux de caractères: caractères simples, séquences d'échappement et caractères universels.

Vous pouvez diviser une longue ligne en plusieurs lignes en utilisant des chaînes littérales et en les séparant à l'aide d'espaces blancs.

Voici quelques exemples de littéraux de chaîne. Les trois formes sont des chaînes identiques.

"hello, dear"

"hello, \

dear"

"hello, " "d" "ear"

Le mot-clé const

Vous pouvez utiliser const préfixe pour déclarer des constantes avec un type spécifique comme suit -

const variable type = value;

L'exemple suivant montre comment utiliser le const mot-clé -

package main

import "fmt"

func main() {
   const LENGTH int = 10
   const WIDTH int = 5   
   var area int

   area = LENGTH * WIDTH
   fmt.Printf("value of area : %d", area)   
}

Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant -

value of area : 50

Notez que c'est une bonne pratique de programmation de définir des constantes dans CAPITALS.