如何从Swift调用标准C库?

时间:2015-01-30 08:32:14

标签: c macos swift

我想在我的swift应用程序中使用stdio.h,stdlib.h等C库。但我无法导入。我该怎么办?

import <stdio.h> // BAD
#include <stdio.h> // BAD
#import <stdio.h> // BAD
import Foundation // cannot use printf etc.

2 个答案:

答案 0 :(得分:5)

要在OS-X平台上导入纯Swift中的C函数,请使用:

import Darwin

这可以看作是Foundation.swift中的一个子导入,但单独导入它可以避免对Cocoa和其他iOS / OSX框架模块进行不必要的处理。

NeilJaff的回答是有效的,因为它会导致基金会和所有子模块被导入,但import Darwin更具针对性。

答案 1 :(得分:4)

创建桥接标题

  • 创建Obj-C头文件
  • 添加导入语句
  • 转到您的项目构建设置
  • 找到 Objective-C桥接标题 设置。
  • 将其设置为/ your / file
  • 的路径
  • 您导入标题的文件将可以在所有Swift文件中使用。

https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html