swift 语法

Swift3.0 调用C函数

2017-06-05  本文已影响27人  HCong

一般情况下Swit要想调用obj-c,c或c++代码必须通过obj-c以及桥接文件才可以办到,但是使用@_silgen_name,可以对于某些简单的代码,直接跳过桥接文件和.h头文件与C代码交互。

创建.c文件

#include <stdio.h>
int add(int i, int j){
    return i + j;
}

int mul(int i, int times){
    return i * times;
}

创建.swift文件,引用.c文件函数

// 在全局作用域下进行声明
// swift 2.2使用关键字@asmname
import Foundation
@_silen_name("add") func c_add(_ num1: Int, _ num2: Int) -> Int
@_silgen_name("mul") func c_mul(_ num: Int, _ times: Int) -> Int

// 调用函数
print(c_add(90, 23))
print(c_mul(3, 20))

// 结果
113
60
上一篇 下一篇

猜你喜欢

热点阅读