2016-05-04 7 views
-2

Ich muss 2 Arrays machen und Funktionen verwenden, um sie einzugeben, auszugeben, hinzuzufügen und zu vergleichen, aber ich bekomme immer die Fehlermeldung: undefined reference to outputVLI(int*, int). Ich bin mir nicht sicher, was das bedeutet oder wie es zu beheben ist. Jede mögliche Hilfe würdeNicht definierte Referenz auf outputVLI?

#include <iostream> 
using namespace std; 

const int maxDigits = 100; 
void inputVLI (int vli[], int size); // Inputs the very long integers 
void outputVLI (int vli[], int size); // Outputs the very long integers 
void addVLI (const int vli1[], const int vli2[], int vli3[], int size1, int size2, int& size3); // Adds the very long integers together 
int compVLI (const int vli1, const int vli2, int size1, int size2); // Compares the very long integers 

int main() 
{ 
    int vli1[maxDigits], vli2[maxDigits], vli3[maxDigits], size1, size2, size3; 
    inputVLI (vli1, maxDigits);         // Calls the individual functions 
    outputVLI (vli1, maxDigits);        // | 
    inputVLI (vli2, maxDigits);         // | 
    outputVLI (vli2, maxDigits);        // | 
    /*addVLI (vli1, vli2, vli3, size1, size2, size3);   // | 
    compVLI (vli1, vli2, size1, size2);*/      // \/ 
    return 0; 
} 

void inputVLI(int vli[], int size) 
{ 
    cout << "Enter a very long integer" << endl; 
    cin >> vli[maxDigits]; 
} 

void output (int vli[], int size) 
{ 
    for (int i=maxDigits; i>=0; i--) 
     cout << vli[i]; 
} 

void addVLI (const int vli1[], const int vli2[], int vli3[], int size1, int size2, int& size3) 
{ 
/* 
    for (int i=0; i<maxDigits; i++) 
    { 
     vli3[i]=vli1[i] + vli2[i]; 
     cout << "The sum of the vli's is:" << vli3[i] << endl; 
    } 
*/ 
} 

int compVLI (const int vli1, const int vli2, int size1, int size2) 
{ 
/* 
    for (int i=0; vli1[maxDigits] && vli2[maxDigits]; i++) 
    { 
     if (vli1[maxDigits] != vli2[maxDigits]) 
     { 
      return (-1); // -1 is not equal 
     } 
     return (1); // 1 is equal 
    } 
*/ 
} 

Antwort

0

Ihre outputVLI Funktion ist declared, but not defined geschätzt. Also, sollten Sie die Definition hinzufügen:

void outputVLI(int vli[], int size) { 
    // TODO: implementation here 
} 

Auch Ihre compVLI Funktion benötigt einen Wert zurückgeben ...

+0

Ich weiß nicht, was du meinst, es nicht hows definiert? – awpirates9

+0

Sehen Sie sich die Antwort an, mit der ich verlinkt bin. Sie müssen Ihre Funktion deklarieren (z. B. 'void foo();') und Sie müssen Ihre Funktion definieren (z. B. 'void foo() {}'). Sie können die Deklaration überspringen, wenn Sie Ihre Funktion vor der Verwendung definieren. – miha

Verwandte Themen