2014-01-15 111 views
1

我得到這個誤差ARRAY1未申報(第一次使用此功能),ARRAY1未聲明(第一次使用此功能)[警告]轉換從雙未聲明的標識符/陣列

這裏爲int是代碼:

#include<conio.h> 
#include<math.h> 
using namespace std; 

int main(){ 
double dist(double array1[4], double array2[4]); 
{ 
    double Sum; 
    double distance; 

    for(int i=0;i<4;i++) 
    { 
     cout<<"Enter value of first coordinate"; 
     cin >> array1[i]; 
     cout<<"Enter value of second coordinate"; 
     cin >> array2[i]; 

     Sum = Sum + pow((array1[i]-array2[i]),2.0); 
     distance = sqrt(Sum); 
    } 
     cout << "DISTANCE: " << distance; 
    return distance; 
} 
} 

我不明白在哪裏解決這個錯誤。有人可以幫忙嗎?

+0

除了@XiaogeSu已經提到的內容:您正在使用'Sum'未初始化,使用'double Sum();'或'double Sum = 0.0;'來初始化它。 – Nabla

回答

1
  1. 我有幾個世紀沒見過conio.h。我假設它是Turbo C++?改爲使用#include <iostream>
  2. 您在main中聲明功能dist。除非使用C++ 11 lambda語法,否則C++不允許這樣做。從main中移出dist,刪除函數聲明行的分號。