Ho codice sorgente di una riga di comando C game
, che attende l'utente stdin
e le uscite stdout
. Voglio dare l'input da un campo di testo a main
di questo codice C
e prendere l'output in un campo di area di testo, ad esempio.Command Line C programma a Swift
int mainer(int argc, char **argv) {
int i;
int hitme;
char ch;
prelim();
if (argc > 1) { // look for -f option
if (strcmp(argv[1], "-f")== 0) {
coordfixed = 1;
argc--;
argv++;
}
}
if (argc > 1) {
fromcommandline = 1;
line[0] = '\0';
while (--argc > 0) {
strcat(line, *(++argv));
strcat(line, " ");
}
}
else fromcommandline = 0;
// some other code
}
Dall'esempio here, dovrei effettuare le seguenti operazioni:
let args = [" ", "regular", "short", ""]
var cargs = args.map { strdup($0) }
let result = mainer(Int32(args.count), &cargs)
for ptr in cargs { free(ptr) }
Come potrei chiamare la main function
, e tenerlo in vita e continuare a dare ad esso argomenti per farlo agire come command line
.
Non sto provando a sostituire il main, questo è nell'app principale, lo sto solo chiamando principale solo per scopi di riferimento .. – MasterWizard