我正在努力实现一个brainfuck 解释器,并且我正在为两个连续,
命令的调用而苦苦挣扎。
这是我的代码的摘录:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MEM_SIZE 30000
#define MAX_LINE_LENGTH 256
int main (int argc, char **argv)
{
char *input = ",.,.";
char bytes [MEM_SIZE] = {0};
int pos=0;
int i=0;
while (input[i] != '\0'){
switch (input[i]){
case '.':
printf ("%c", bytes[pos]);
break;
case ',':
printf ("Enter Number:\n");
bytes[pos] = fgetc (stdin);
printf ("Number Entered\n");
break;
default:
break;
}
i++;
}
return EXIT_SUCCESS;
}
程序的输出如下:
Enter Number:
3 // This is me, manually entering the value.
Number Entered
3Enter Number:
Number Entered
为什么第二个电话不fgetc
上班?