如何询问用户是否希望在c中输入其他值

时间:2011-05-17 10:38:26

标签: c

这就是我尝试它的方式,但是当我输入q时它只是跳过命令行并继续程序。

int main()
{
int a;
char c;
cont(&a);
while(a != 'q' && a != 'Q')
{
while ( ( c = getchar() ) != EOF)
{
    putchar( r13( c ) );    
 }
}

return 0;
 }

1 个答案:

答案 0 :(得分:1)

您需要将a的引用传递给cont() -

void cont(int* a)
{ 
    printf("If you do not want to enter a value press q"); 
    scanf("%c", a);
}

并称之为:

cont(&a);

否则,只更改a(传递给函数)的副本,而不是a本身。

如果要更改函数中a的值,则需要将返回值存储在某处,但忽略它(例如a = cont(a);)。
或者,为函数提供a的引用(例如地址),这样就可以更改a的值。