我有以下鸡的方案代码片段:
(require-extension bind)
(bind* "double int_exp(double, int);")
(bind* "double square(double);")
(begin
(print (int_exp 1.2 1))
(print (square 2.0)))
int_exp
并且square
只是我为测试而编写的小型测试函数(用 C 编写)。此代码工作正常;但是,一旦我删除星号,编译的程序就会打印出虚假值(并且虚假值取决于我是使用 clang 还是 gcc 编译 C 代码。)绑定文档只是说“[bind* is]类似于绑定,但也使用foreign-declare
“和”将代码嵌入到生成的方案扩展foreign-declare
中,我应该在什么时候使用bind
和使用它们之间有什么区别bind*
?