2011-11-30 85 views
13

我想正是为此在用Cython:我可以用Cython创建一个静态C数组吗?

cdef int shiftIndexes[] = [1,-1, 0, 2,-1, -1, 4, 0, -1, 8, 1, -1, 16, 1, 0, 32, 1, 1, 64, 0, 1, 128, -1, 1] 

我已经看到了固定的bug报告和旧的电子邮件列表静态数组功能在用Cython存在一些参考,但我找不到ANTY示例和这个特殊的例子给我一个语法错误:Syntax error in C variable declaration

是否有可能使用Cython制作静态C数组?

回答

23

使用指针符号来代替:

cdef int *shiftIndexes = [1,-1, 0, 2,-1, -1, 4, 0, -1, 8, 1, -1, 16, 1, 0, 32, 1, 1, 64, 0, 1, 128, -1, 1] 

它会像一个魅力。

+0

Woah Nelly它像一个魅力。 (刚刚获得了10倍的加速)。 – Rich

相关问题