Swift文件:main.swift
import Foundation//Swift调用C函数desc1()//Swift调用OC//拿到OC类var funcclass = Root()funcclass.desc2()
OC文件:Root.h
#import <Foundation/Foundation.h>@interface Root : NSObject-(voID)desc2;@end
Root.m
#import "Root.h"@implementation Root//求和函数//1、定义函数int sum2(int a,int b){ return a+b;}-(voID)desc2{ //2、声明Block int (^p)(int,int); //3、函数指针指向函数 // p = sum2; p = ^(int a,int b) //把函数赋值给Block { return a+b; }; //4、使用 int result = p(10,40); printf("OC方法输出result:%d\n",result);}
C函数文件:
Fun.c
#include <stdio.h>//求和函数//1、声明函数int sum1(int a,int b){ return a+b;}voID desc1(){ //2、声明函数指针 int (*p)(int,int); //3、函数指针指向函数 p = sum1; //4、使用 int result = p(10,20); printf("C函数输出结果:%d\n",result);}
桥接文件:工程名称-BrIDging-header.h
//这里面需要导入 桥接的C或OC的头文件//导入C函数voID desc1();//导入OC头文件#import "Root.h"总结
以上是内存溢出为你收集整理的Swift调用OC和C全部内容,希望文章能够帮你解决Swift调用OC和C所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)