02.Restrictions

command
v0.1.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 18, 2024 License: MIT Imports: 3 Imported by: 0

README

cgo の制約事項

cgo では以下がサポートされない。

  • 可変長引数を持つ関数
  • マクロ
  • sizeof演算子

可変長引数を持つ関数の代表例が printf() であり、最初に cgo を試す際に大抵誰もが試す関数だと思うが

printf() は、可変長引数を持っている関数であるため、そのまま C.printf() とは呼べない。

マクロは実務現場では、かなり利用されるものであるが、 cgo ではそのまま呼べない。

sizeof演算子は、コンパイル時に展開されるものであるため、cgo ではそのまま呼べない。

利用する方法として、cgoヘッダにラッパー関数を定義しておいて、それを呼び出すというやり方が使える。

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL