我有一份命令行C语言游戏
的源代码,它等待用户输入的stdin
,并输出stdout
。我想从文本框中提供输入,然后将输出显示在文本区域中。
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) }
我该如何调用主函数
,并保持其一直运行,并不断向其提供参数以使其像命令行
一样工作。