swift 调用 C语言库

     目前了解到两种调用C语法方法方式:这里以系统中自带的“ /usr/include/CommonCrypto/CommonCrypto.h”为例

一: 使用桥接文件。
     创建一个桥接文件xxx.h,然后在Build setting 中 “Objective-C Bridging Header” 中添加刚刚创建的xxx.h文件,例如:
然后在将需要使用的头文件名写入xxx.h文件就可以在swift中调用,此方法不近适用于C语言,同样适用于OC。例如:

二:使用swift的module。
    1. 首先在工程中创建一个Group,在Group中创建一个Empty文件,命名为module.modulemap或者module.map。
    2.在其中填写如下内容(注释内容不需要):
module  CommonCrypto [system] {
     header "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/CommonCrypto/CommonCrypto.h"
    
///usr/include/CommonCrypto/CommonCrypto.h" //识别不了这个路径
    
//link "CommonCrypto" //不要添加这句
    
export *
}

注意
网上有一部分例子中header使用的是"/usr/include/CommonCrypto/CommonCrypto.h"
但是这个路径不全,找不到相关API的。
也有的例子添加了link 这个属性,但是这个属性会造成如下错误:
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Objective-C工程中调用Swift,需要执行以下步骤: 1. 创建Swift和Objective-C工程 首先,您需要创建一个Swift和一个Objective-C工程。在Xcode中,选择File > New > Project,然后选择Swift和Objective-C工程分别创建它们。 2. 添加Swift到Objective-C工程 在Objective-C工程中,选择File > Add Files to "工程名",然后选择Swift的文件。确保选择“Copy items if needed”选项,以便将Swift文件复制到Objective-C工程中。 3. 创建一个桥接文件 在Objective-C工程中,创建一个桥接文件,用于将Swift导入Objective-C工程。选择File > New > File > Header File,然后将其命名为“工程名-Bridging-Header.h”。 4. 导入Swift到桥接文件中 打开桥接文件“工程名-Bridging-Header.h”,添加以下代码: #import "Swift名称-Swift.h" 这将导入Swift到Objective-C工程中。 5. 调用Swift中的方法 现在,您可以在Objective-C代码中调用Swift中的方法了。首先,确保在需要调用Swift的Objective-C文件中导入桥接头文件: #import "工程名-Bridging-Header.h" 然后,您可以使用以下代码调用Swift中的方法: Swift类名 *swiftObj = [[Swift类名 alloc] init]; [swiftObj Swift方法名称]; 注意:Swift中的类和方法必须使用@objc修饰符进行标记,以便它们可以在Objective-C代码中使用。例如: @objc class Swift类名: NSObject { @objc func Swift方法名称() { // Swift方法代码 } }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值