Maison > développement back-end > Golang > qu'est-ce que l'octet Golang

qu'est-ce que l'octet Golang

(*-*)浩
Libérer: 2019-12-13 10:59:55
original
10773 Les gens l'ont consulté

Chaque élément de la chaîne est appelé un « caractère », et les caractères peuvent être obtenus lors du parcours ou de l'obtention d'un seul élément de chaîne.

qu'est-ce que l'octet Golang

Il existe deux types de caractères dans le langage Go :

L'un est de type uint8, ou type octet, représente un caractère en code ASCII. (Apprentissage recommandé : go)

L'autre est le type rune, qui représente un caractère UTF-8. Lorsque vous devez traiter des caractères chinois, japonais ou autres caractères composés, vous devez utiliser. le type de runes. Le type rune est équivalent au type int32. Le type

byte est un alias pour uint8, ce qui convient parfaitement aux caractères codés ASCII traditionnels qui n'occupent qu'un seul octet, tels que var ch byte = 'A', et les caractères sont placés entre guillemets simples.

Dans la table de codes ASCII, la valeur de A est 65, et en notation hexadécimale elle est 41, donc l'écriture suivante est équivalente :

var ch byte = 65 或 var ch byte = '\x41'      //(\x 总是紧跟着长度为 2 的 16 进制数)
Copier après la connexion

En plus One La façon la plus possible de l'écrire est d'être suivi d'un nombre octal de longueur 3, tel que 377.

Le langage Go prend également en charge Unicode (UTF-8), donc les caractères sont également appelés points de code Unicode ou runes, et sont représentés par int en mémoire. Dans les documents, le format U+hhhh est généralement utilisé, où h représente un nombre hexadécimal.

Lors de l'écriture de caractères Unicode, vous devez ajouter le préfixe u ou U avant le nombre hexadécimal. Étant donné qu'Unicode occupe au moins 2 octets, nous utilisons le type int16 ou int pour le représenter. Si vous devez utiliser 4 octets, utilisez le préfixe u. Si vous devez utiliser 8 octets, utilisez le préfixe U.

var ch int = '\u0041'
var ch2 int = '\u03B2'
var ch3 int = '\U00101234'
fmt.Printf("%d - %d - %d\n", ch, ch2, ch3) // integer
fmt.Printf("%c - %c - %c\n", ch, ch2, ch3) // character
fmt.Printf("%X - %X - %X\n", ch, ch2, ch3) // UTF-8 bytes
fmt.Printf("%U - %U - %U", ch, ch2, ch3)   // UTF-8 code point
Copier après la connexion

Sortie :

65 - 946 - 1053236
A - β - r
41 - 3B2 - 101234
U+0041 - U+03B2 - U+101234
Copier après la connexion

Le spécificateur de format %c est utilisé pour représenter des caractères. Lorsqu'il est utilisé avec des caractères, %v ou %d sera généré. entier utilisé pour représenter le caractère. %U génère une chaîne au format U+hhhh.

Le package Unicode possède des fonctions intégrées pour tester les caractères. La valeur de retour de ces fonctions est une valeur booléenne, comme indiqué ci-dessous (où ch représente le caractère) :

判断是否为字母:unicode.IsLetter(ch)
判断是否为数字:unicode.IsDigit(ch)
判断是否为空白符号:unicode.IsSpace(ch)
Copier après la connexion
.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal