Go言語でC言語関数を呼び出す方法

Go言語では、cgoツールと特定の構文を使用してC言語コードを呼び出すことができます。

以下は、Cの関数を呼び出すためのGoのコードの例です。

  1. コールセンター
package main

/*
#include <stdio.h>

// 声明一个外部的C函数
extern void helloFromC();

int main() {
    // 调用外部的C函数
    helloFromC();
    return 0;
}
*/
import "C"

func main() {
    // 空的main函数,必须有
}
  1. 呼び出しヘッダー
#ifndef CALLC_H
#define CALLC_H

void helloFromC();

#endif
  1. ネイティブに日本語で言い換えると
  2. callc.h
#include <stdio.h>
#include "callc.h"

void helloFromC() {
    printf("Hello from C!\n");
}
  1. Go コードをコンパイルして実行するには、次のコマンドを実行します。
go run callc.go

実行結果は Hello from C! と出力され、C言語のコードの呼び出しに成功したことを表します。

これらの例は単純な C 関数を呼び出す方法を示していますが、必要に応じてより複雑な C 関数を記述し、Go コードから呼び出すことができます。

bannerAds