2

我正在使用 Visual Studio。当我尝试编译我的代码时,对于“hexISOS”函数中使用的每个变量,我收到一条错误消息,指出 21“IntelliSense:标识符“[blank]”未定义”。我稍后在代码中定义了这些变量,想知道是否有人能告诉我出了什么问题。

我的代码如下所示:

#include <iostream>
#include <cmath>
using namespace std;

int hexISOS(double AX, AY, BX, BY, CX, CY, DX, DY)
{
    long double sol1, sol2;
    bool ans;

    sol1 = sqrt(pow((AX - CX), 2) + pow((AY - CY), 2));
    sol2 = sqrt(pow((BX - DX), 2) + pow((BY - DY), 2));

    if(sol1 == sol2)
    {
    ans = true;
    }

    else
    {
    ans = false;
    }

    cout << "\nThe distance between A and C is " << sol1 << endl;
    cout << "The distance between B and D is " << sol1 << endl;
    cout << "\nIsosceles = " << ans;

    return 0;
}

int main()
    {
    double AX, AY, BX, BY, CX, CY, DX, DY;

    cout << "AX: ";
    cin >> AX;

    cout << "\nAY: ";
    cin >> AY;

    cout << "\nBX: ";
    cin >> BX;

    cout << "\nBY: ";
    cin >> BY;

    cout << "\nCX: ";
    cin >> CX;

    cout << "\nCY: ";
    cin >> CY;

    cout << "\nDX: ";
    cin >> DX;

    cout << "\nDY: ";
    cin >> DY;

    hexISOS(AX, AY, BX, BY, CX, CY, DX, DY);

    return 0;
}
4

1 回答 1

1

您可以使用一次数据类型然后使用一堆变量名称的事情 - 就像在主函数的第一行一样 - 我认为您不能在函数的参数列表中这样做。尝试这样做,看看是否有帮助:

int hexISOS(double AX, double AY, double BX, double BY, double CX, double CY, double DX,
        double DY)

编辑:我认为不合法的另一件事是:

long double sol1, sol2;

您可能需要将其更改为以下内容:

long sol1;
double sol2;

或类似的东西:

double sol1, sol2;
于 2012-04-16T21:16:19.253 回答