未初始化的局部变量'r'使用

时间:2014-03-22 03:57:46

标签: c++ initialization

找到球体积

    #include <iostream>
    #include <cmath>
    #define PI 3.1416 
    using namespace std; 

   void sphere(double,double);
   void main()
   { 
   double r ;
   double vol = (4.0/3.0)* PI * pow(r,3); 

   cout<<"\n\n Enter the radius : "; 

   cin>>r; 

   sphere(r, vol);

   cout<<"\n\n The volume sphere is : "<<vol; 

   } 

   void sphere(double r, double vol)
   {
vol = (4.0/3.0)* PI * pow(r,3); 
    }

我该如何解决这个问题?它说: 警告C4700:未初始化的本地变量&#39; r&#39;使用

2 个答案:

答案 0 :(得分:2)

 double vol = (4.0/3.0)* PI * pow(r,3); 

您使用了r,但它的价值是什么。 double r ; r这里只会有垃圾值。

答案 1 :(得分:1)

我认为“double vol =(4.0 / 3.0)* PI * pow(r,3);”应该放在“cin&gt;&gt; r”之后。但是,正如您使用了球体,您可能会删除这句话。