How to call C from Swift?
c, swift
Solution
Yes, you can of course interact with Apple's C libraries. Here is explained how.
Basically, the C types, C pointers, etc., are translated into Swift objects, for example a C `int` in Swift is a `CInt`.
I've built a tiny example, for another question, which can be used as a little explanation, on how to bridge between C and Swift:
main.swift
import Foundation
var output: CInt = 0
getInput(&output)
println(output)
UserInput.c
#include <stdio.h>
void getInput(int *output) {
scanf("%i", output);
}
cliinput-Bridging-Header.h
void getInput(int *output);
Here is the original answer.
Problem
Is there a way to call C routines from Swift? A lot of iOS / Apple libraries are C only and I'd still like to be able to call those. For example, I'd like to be able to call the objc runtime libraries from swift. In particular, how do you bridge iOS C headers?