Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 菜鸟与性病作斗争_C++_Cin - Fatal编程技术网

C++ 菜鸟与性病作斗争

C++ 菜鸟与性病作斗争,c++,cin,C++,Cin,我遇到了一个问题,当一个简单函数到达std::cin请求时,它似乎会终止。编译器不会抛出警告或错误,也不会发生运行时错误,程序只会返回主菜单 片段: #include <iostream> #include <math.h> using namespace std; void circle() { float radius = 0.0f, diameter = 0.0f, circumference = 0.0f, area = 0.0f; const

我遇到了一个问题,当一个简单函数到达std::cin请求时,它似乎会终止。编译器不会抛出警告或错误,也不会发生运行时错误,程序只会返回主菜单

片段:

#include <iostream>
#include <math.h>

using namespace std;

void circle()
{
    float radius = 0.0f, diameter = 0.0f, circumference = 0.0f, area = 0.0f;
    const float pi = 3.14f;

    cout << "Enter radius." << endl;
    cin >> radius;
    cout << "Radius: " << radius << endl;
    cout << "Diameter: " << 2*radius << endl;
    cout << "Cirumference: " << 2*pi*radius << endl;
    cout << "Area: " << pi * pow(radius, 2) << endl;
}
#包括
#包括
使用名称空间std;
空圈()
{
浮动半径=0.0f,直径=0.0f,周长=0.0f,面积=0.0f;
常数浮点pi=3.14f;
库特半径;

当我尝试在
windowsxp
上使用
visualstudio2010
运行您的代码时,它在我的机器上也会这样做

在调用
circle()
之后,我将
getchar();
放在
main
中,成功地解决了这个问题

我不知道为什么会发生这种情况,希望有人能对此有更多的了解

**编辑:


当然它会退出,这是因为它会运行到退出应用程序的
main
的末尾。

当我在
windowsxp
上尝试使用
visualstudio 2010
运行您的代码时,它在我的机器上也会这样做

在调用
circle()
之后,我将
getchar();
放在
main
中,成功地解决了这个问题

我不知道为什么会发生这种情况,希望有人能对此有更多的了解

**编辑:


当然它会退出,这是因为它会运行到退出应用程序的
main
的末尾。

cin
不请求输入,只是从stdin读取。所以程序会打印出来

Enter radius.

接着是一个新行。然后你可以键入半径并点击回车键。你试过了吗?

cin
不请求输入,只是从stdin读取。所以你的程序会打印出来

Enter radius.

然后是一个新行。然后你可以键入半径并点击回车键。你试过了吗?

好的,它在我的计算机上运行得很好。你调试过它了吗?它真的跳过了这些行吗?添加

cout << flush;

cout嗯,它在我的电脑上运行得很好。你调试过它了吗?它真的跳过了那些行吗?添加

cout << flush;

cout-Good request。我从未添加它,因为我当时认为它不相关。我错了。请求很好。我从未添加它,因为我当时认为它不相关。我错了。这是我的问题!我从未使用
cin
buffer清理过。
main()
有另一个
cin
。我没有想到这是问题所在,因此我从未包含
main()
.Derp的内容。感谢您的帮助!这是我的问题!我从未使用
cin
缓冲区清理过。
main()
有另一个
cin
。我没有想到这是问题所在,因此我从未包含
main()
.Derp的内容。谢谢您的帮助!