Passer le caractère de langage C * à Swift

Faire

Renvoie char * en langage C et traite comme une chaîne en swift

scène

Maintenant que j'ai créé HelloFrameWork (Cocoa Touch Framework), je souhaite utiliser les méthodes qu'il contient de swift.

Langage C

hello.h devrait être un en-tête public dans Xcode

hello.h


#ifndef HELLO_H
#define HELLO_H

char* getHello();

#endif

hello.c


char* getHello() {
    return strdup("Hello");
}

swift

let hello_char = getHello()
let hello: String = String(cString: hello_char)
//Libération de la mémoire
free(hello_char)

référence

Document officiel utilisant Swift avec cacao et Object-C

Postscript

L'utilisation de strdup () ne semble pas non plus belle. Pour mieux écrire, vous devez donner un argument de destination du côté rapide et y mettre une valeur.

Recommended Posts

Passer le caractère de langage C * à Swift
Manipulez bien le caractère C ** avec Swift
Convertir le tableau 2D de Swift en tableau 2D de C
Conversion du pointeur de chaîne de langage C en type Swift String
Code du port C avec de nombreux typecasts vers Swift
Passez des variables à Scope.
Passer des paramètres à Rails link_to
[Swift5] Comment communiquer de ViewController à Model et transmettre une valeur
J'ai essayé de mâcher C # (indexeur)
Introduction à la pratique rapide Chapitre 5
Passer les paramètres régionaux i18n à JavaScript
Comment passer Oracle Java Silver
[Swift] Comment remplacer plusieurs chaînes
C # (polymorphisme: polymorphisme)
Appeler les fonctions du langage C depuis Swift