Cython的函数
1 函数定义:
1.1 在Cython里定义一个类C函数:
1.1.1 在这里之所以说是定义一个"类C”函数,而不是一个C函数,是因为它和纯C函数的定义还是有区别的,具体看下面的例子:
1.1.2 例1:
cdef int Max(int a,int b):
if a>b:
return a
else:
return b
可见,定义一个C函数和纯C还是比较相似的
但是语法却是遵循python的语法
1.1.3 再来看成一个比较怪异的例子,例2:
cdef Max(int a,b):
if a>b:
return a
else:
return b
这个例子就有点怪了,牛不是牛,马不像马,还是从翻译出来的c代码中去找答案吧:
先创建一个test.pyx
cdef Max(int a,b):
if a>b:
return a
else:
return b
再转成C代码:
cython -o test.c test.pyx
打开test.c,搜索cdef Max定义到下面的代码:
/* "test.pyx":1
* cdef Max(int a,b): #<<<<<<<<<<<<<<
* if a>b:
* return a
*/