Swift3.0 調用C函數-_silen_name

通常狀況下Swit要想調用obj-c,c或c++代碼必須經過obj-c以及橋接文件才能夠辦到,可是使用@_silgen_name,能夠對於某些簡單的代碼,直接跳過橋接文件和.h頭文件與C代碼交互。php

建立.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
做者:HCong 連接:https://www.jianshu.com/p/233afa939614 來源:簡書 簡書著做權歸做者全部,任何形式的轉載都請聯繫做者得到受權並註明出處。
相關文章
相關標籤/搜索