У меня есть исходный код командной строки C game
, который ждет пользователя stdin
и выводит stdout
. Я хочу дать ввод из текстового поля через main
этого кода C
и взять вывод в поле текстовой области, например.
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
}
Из примера здесь, я должен сделать следующее:
let args = [" ", "regular", "short", ""]
var cargs = args.map { strdup($0) }
let result = mainer(Int32(args.count), &cargs)
for ptr in cargs { free(ptr) }
Как я могу вызвать main function
и сохранить его в живых и продолжать давать ему аргументы, чтобы заставить его действовать как command line
.