Maison > développement back-end > Golang > Comment appeler le code C en Golang

Comment appeler le code C en Golang

(*-*)浩
Libérer: 2019-12-31 13:14:31
original
3145 Les gens l'ont consulté

Comment appeler le code C en Golang

cgo permet d'utiliser du code C dans Golang.

Bonjour tout le monde                                                                                                                 (apprentissage recommandé : go)

Afin d'avoir une compréhension plus intuitive, regardons a Un exemple simple, créez le fichier main.go :

package main
/*
#include <stdio.h>

void sayHi() {
    printf("Hi");
}
*/
import "C"
 
func main() {
    C.sayHi()
}
Copier après la connexion

Exécutez le programme :

go run main.go
Copier après la connexion

Le programme s'exécute et génère hi (pour plus d'exemples, voir $GOROOT /misc/ cgo).

Travail de préparation sous Windows

Si vous souhaitez utiliser cgo sous Windows, vous devez installer le compilateur gcc. Ici, j'utilise mingw-w64.

Définir les indicateurs de compilation et de liaison

Ce que nous importons en utilisant l'importation « C » est un pseudo-package (pseudo-package) à travers lequel nous utilisons du code C. Avant l'importation "C", le commentaire qui suit immédiatement l'importation "C" peut inclure :

编译器和链接器标志
C 代码
Copier après la connexion

Nous pouvons définir les indicateurs du compilateur et de l'éditeur de liens via la directive #cgo, par exemple :

// #cgo CFLAGS: -DPNG_DEBUG=1
// #cgo amd64 386 CFLAGS: -DX86=1
// #cgo LDFLAGS: -lpng
// #include <png.h>
import "C"
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