如何询问用户是否希望在 c 中输入另一个值
这就是我尝试的方式,但是当我输入 q 时,它只是跳过命令中的一行并继续程序。
int main()
{
int a;
char c;
cont(&a);
while(a != 'q' && a != 'Q')
{
while ( ( c = getchar() ) != EOF)
{
putchar( r13( c ) );
}
}
return 0;
}
This is how i attempted it, how ever when i enter q it just skips a line in command and continues the program.
int main()
{
int a;
char c;
cont(&a);
while(a != 'q' && a != 'Q')
{
while ( ( c = getchar() ) != EOF)
{
putchar( r13( c ) );
}
}
return 0;
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要将
a
的引用传递给cont()
-并像这样调用它:
否则,只有
a
的副本(即被传递给函数)被改变,而不是a
本身。如果您想更改函数中
a
的值,那么您需要将返回值存储在某处,但您忽略了它(例如a = cont(a);
).或者,为函数提供 a 的引用(例如地址),以便它将能够更改
a
的值。You need to pass the reference of
a
tocont()
-and call it like that:
otherwise, only the the copy of
a
(that is passed to the function) is changed, nota
itself.If you want to change the value of
a
in the function, then you need to store the return value somewhere, but you ignored it (e.g.a = cont(a);
).Or, give a reference (e.g. address of) a to the function, so it will be able to change the value of
a
.