C语言和AAuto互相调用函数

学着快手开发环境中关于C语言与AAuto函数调用的例子,把两者合二为一做了一个小例子,练练手,学习之用。

//C语言和AAuto互相调用函数

code_c = /**** 
	#include <stdio.h>
	
	//该函数在C语言中声明,在AAuto中定义 
	const void aau();
	
	void C()
	{     
   		io_reopen();
   		//调用AAuto函数
 		aau();
 		printf("C say: hello AAuto\n");
	} 

****/

io.open();//打开控制台,默认编译错误等信息在控制台输出

import tcc; 
 
//创建TCC编译器
vm = tcc(); 

//编译C源码
vm.compile(code_c);

//定义一个AAuto函数
aauto_func = function(){
	io.print( "AAuto say: hello C" )
} 

//导入为C语言函数定义
vm.setCdecl(
	aauto_func, //AAuto函数名字
	"aau", //在C语言中调用的函数名字 
	"void()" //函数原型,与C语言中的声明必须一致.
)
 
//获取C函数
func_c = vm.getCdecl("C","void()")

//调用C函数
var ret = func_c()
 
//关闭C语言编译器
vm.close();
execute("pause")
io.close()


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值