我在OS X 10.10上的XCode 6.2中有一个小的快速项目,并为该项目添加了一个小的C文件,简化为:
#include <stdio.h>
void function1(unsigned char buf) {}
unsigned char abuf;
function1(abuf);
我无法编译任何版本的C文件。上面的特定代码生成2个错误:“缺少类型说明符,默认为'int'”,“只有函数定义才允许没有类型的参数列表”
我的假设是项目在某种程度上不能正确编译C文件,但我无法弄清楚缺少什么。 (请注意,最终C文件将用于访问外部库,并且已生成当前为空的“project-Bridging-Header.h”文件。)任何人都可以帮忙吗?
答案 0 :(得分:1)
它无效C,这就是它没有编译的原因。它与Swift无关。你声明一个函数,你声明一个extern变量,然后,无处不在,看起来像一个函数调用。
在C中,代码只能是函数实现的一部分。