传递角色以便迅速控制

时间:2010-11-09 11:16:32

标签: c

所以我被赋予了这个功能来读取要执行的选项。我理解提示的执行但我无法将'c'传回程序。我认为它与我尚未掌握的指针有关。

   int nextCommand(int *x, int *y)
        {
            char c;
            while(1){
                scanf("%c", &c);
                if (c == 's' || c == 'p') break;
                if (c == 'f' || c == 'F') {scanf("%d", x); break;}
                if (c == 'u') {scanf("%d", x); scanf("%d", y); break;}
            }
            return c;
        }

实际描述我的问题。当我调用此函数时,程序处于停顿状态。我尝试输入一个适当的命令(即s或p),程序结束。对不起,我在一个漫长的夜晚结束时提出了这个问题。

2 个答案:

答案 0 :(得分:0)

该函数只是向任何调用它的人返回一个char(即许多平台上的1字节数据,但不是全部)。

例如在你的主要功能中:

int main(int argc, char **argv)
{
    int a = 0, b =0;
    char result;

    result = nextCommand(&a, &b);

    /* at this point result will contain the single character 's', or 'u', or... etc. */

    return 0;
}

答案 1 :(得分:0)

x和y的scanf有什么用? 该计划似乎是正确的。你遇到的问题是什么?你能详细说明你面临的问题吗?