Maison >développement back-end >Golang >Quelle est la différence entre golang et c ?
La différence entre le langage Golang et le langage C
1. Différence de surface - point-virgule à la fin de la ligne
Les programmeurs issus de C, C++, C# et Java seront très surpris que le code Go qu'ils voient n'ait pas de point-virgule de fin de ligne (";") comme terminateur de ligne. Avant d'expliquer ce problème, nous déclarons un fait important : la syntaxe formelle Go utilise un point-virgule anglais (";") comme identifiant de fin.
La raison pour laquelle nous n'avons pas besoin d'ajouter un point-virgule à la fin de la ligne est que la conception de Go est basée sur les deux considérations suivantes :
Quelques des règles simples peuvent être utilisées pour déterminer la fin d'une ligne de déclaration. Par conséquent, le point-virgule à la fin de la ligne peut être omis
Omettre le point-virgule à la fin de la ligne peut être utilisé ; mieux standardiser le code.
Lors de la compilation de Golang, lorsque le dernier segment d'une ligne de code (ligne sans commentaire) correspond à l'une des cinq situations suivantes, un point-virgule est automatiquement inséré à la fin de la ligne :
La fin de la ligne est l'une des trois parenthèses droites :), ], };
La fin de la ligne est l'incrément ou opérateur de décrémentation (++ , –) ;
La fin de la ligne est une valeur spécifique de type : booléen, entier, nombre à virgule flottante, nombre complexe, point de code Unicode ou chaîne. littéral;
La fin de la ligne est un identifiant : comprenant le nom du type, le nom de la variable, le nom de la constante, l'étiquette du saut, le nom du package et le nom de l'introduction du package (à l'exclusion des mots-clés
) ;La fin de la ligne est constituée de 4 mots-clés de saut : dont break, continue, fallthrough et return (à l'exclusion des autres mots-clés).
2. Comparaison des variables constantes
Le langage C définit les formats constants et variables
数据类型 变量名称 = 值; const 数据类型 常量名称 = 值;
Le langage Go définit les constantes et les variables formats
En plus des formats standards suivants, le langage Go fournit également plusieurs sucres syntaxiques simples
var 变量名称 数据类型 = 值; const 变量名称 数据类型 = 值;
Comparaison de la gestion du code
Langage C. Gérer le code via des fichiers en langage Go
● Lorsque vous souhaitez utiliser une certaine fonction, il vous suffit d'inclure le fichier .h correspondant
Gérer le code via des packages en langage Go
greepLe langage Go n'a pas la notion de fichiers .h Lorsque vous souhaitez utiliser une certaine fonction dans Go, il vous suffit d'importer le package correspondant
Gestion publique et privée des fonctions et variables dans. Langage C
QuantityQuantity s'il faut exposer les fonctions et les variables via extern et static
Gestion publique et privée des fonctions et des variables en langage Go
Quantityweight s'il faut exposer les fonctions via la mise en majuscule de la première lettre du nom de la fonction
greepLa question de savoir si les variables doivent être exposées est réalisée en mettant en majuscule la première lettre du nom de la variable
4. 🎜>résume les huit points suivants :
Quant aux différences spécifiques entre C et Go, il existe un tableau comparatif détaillé sur hyperpolyglot : http://hyperpolyglot.org/c
hyperpolyglot.orgfournit une comparaison détaillée de certains langages et outils de développement similaires. Vous pouvez y jeter un œil lorsque vous n'avez rien à faire. Apprentissage recommandé :
Tutoriel GolangCe 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!