Maison >développement back-end >Golang >Comment imprimer et stocker l'adresse mémoire d'une variable Struct dans Go ?

Comment imprimer et stocker l'adresse mémoire d'une variable Struct dans Go ?

DDD
DDDoriginal
2024-12-16 15:44:17897parcourir

How Do I Print and Store the Memory Address of a Struct Variable in Go?

Impression et stockage des adresses des variables Struct dans Go

Lors de la déclaration des variables struct et de leur attribution de pointeurs dans Go, il devient nécessaire d'imprimer et stocker leurs adresses. Une idée fausse courante consiste à utiliser l'opérateur &, qui désigne l'adresse d'une variable lorsqu'il est préfixé au nom de la variable. Cependant, le format d'impression par défaut de Go pour les structures traite la dernière ligne des éléments d'une structure comme son adresse, produisant une syntaxe telle que &{field0 field1 ...}.

Pour imprimer explicitement l'adresse d'une variable de structure, nous avons besoin pour utiliser le verbe %p dans une chaîne de format :

fmt.Printf("%p\n", &r)

Cela affichera l'adresse précise de la variable struct r.

Stocker l'adresse d'une variable struct dans une autre variable est également possible. Le code suivant le démontre :

var addr uintptr
addr = &r

Ceci attribue l'adresse de r à la variable addr de type uintptr.

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!

Déclaration:
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