登录
首页 >  Golang >  Go问答

调用cgo宏函数

来源:stackoverflow

时间:2024-04-13 17:54:31 363浏览 收藏

来到golang学习网的大家,相信都是编程学习爱好者,希望在这里学习Golang相关编程知识。下面本篇文章就来带大家聊聊《调用cgo宏函数》,介绍一下,希望对大家的知识积累有所帮助,助力实战开发!

问题内容

我有一个 cgo 程序:

package main

//#define sum(a,b) (a)+(b)
import "c"

func main() {
        print(c.sum(1,2))
}

它应该非常简单并打印 3。但是编译失败:

could not determine kind of name for C.sum

作为我在 cgo 中发现的有限文档,经过一些测试,cgo 可与宏常量一起使用,但如何让它与宏函数/参数一起使用?


解决方案


很简单,你只需要一个包装器:

//#define SUM(a,b) (a)+(b)
//int sum(int a, int b) {
//  return SUM(a,b);
//}
import "C"

func main() {
    print(C.sum(1, 2))
}

今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>