Fiche Data Prep

Action Principale : addPrototypes

Code de préparation

Script en attente de validation
Copié !
1PROC CAS;
2 /* Étape 1: Créer le code source C */
3 RUN;
4 %let c_code = "
5 #include <stdio.h>
6 #include <string.h>
7 #include <stdlib.h>
8 
9 /* Fonction pour additionner deux entiers */
10 int myadd(int a, int b) {
11 return a + b;
12 }
13 
14 /* Fonction pour concaténer une chaîne avec un entier */
15 char* mystring(char* str, int num) {
16 char* result = malloc(100);
17 sprintf(result, \"%s-%d\", str, num);
18 return result;
19 }
20 ";
21 
22 /* Étape 2: Écrire le code C dans un fichier sur le serveur */
23 DATA _null_;
24 file '/tmp/myfuncs.c';
25 put &c_code.;
26 RUN;
27 
28 /* Étape 3: Compiler le code C en bibliothèque partagée (.so) */
29 PROC CAS;
30 SESSION casauto;
31 system "gcc -shared -o /tmp/myfuncs.so -fPIC /tmp/myfuncs.c";
32 QUIT;
33 
Actions utilisant ce script
  • fcmpact addPrototypes En cours
  • Aucune autre action n'utilise ce script exact.