c++ ist nicht in der 'double' in 'double*' for argument 1 to 'void sort(double*,int)' error

Ich bin ein Schüler hören zu c-Programmierung Lektion, und ich bin mit c++ zu 'call-by-reference'. Ich weiß nicht, wie man c++ genau, also ich benutze c, und speichern Sie es in .cpp-Datei. Jedenfalls habe ich eine Funktion ein array Sortieren, und ich habe jetzt einen Fehler. Was sollte ich tun, um dieses Problem zu lösen Fehler?

#include <stdio.h>
#include <math.h>

double round(double value);
void sort(double a[],int cnt);
void swap(double& x,double& y);

int main()
{
    int i;
    double array[3];
    for(i=0;i<3;i++){
    scanf("%lf",&array[i]);
    }
    sort(array[3],3);
    printf("%d %d %d",ceil(array[0]),floor(array[2]),round(array[1]));
    return 0;
}

double round(double value)
{
    return floor(value+0.5);
}

void sort(double a[],int cnt)
{
    int i,j;
    for(i=0;i<cnt-1;i++){
        for(j=i+1;j<cnt;j++){
                if(a[i]<a[j]){
                    swap(a[i],a[j]);
                }
            }
        }
}

void swap(double& x,double& y)
{
    int imsi=x;
    x=y;
    y=imsi;
}
  • Das ist C++ - code, nicht C.
  • Was ist deine eigentliche Frage? "Erklären Sie, meinen code" ist sicherlich Ihre Aufgabe.
InformationsquelleAutor Inkyu Lee | 2015-05-30
Schreibe einen Kommentar