Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Ich möchte einen Polynomfunktion berechnen. Die Funktion soll in der Datei calc.c berechnet werden und in der datei calc.h definiert sein. Ausgegeben werden soll sie in Datei poly.C. Die Wert sollen als Parameter übergeben werden.

Die Datei calc.h habe ich so geschrieben:

#include <iostream>

#define K 100

using namespace std;

int p () {

int erg;

int c1=$1;

int c2=$2;

int c3=$3;

int x=$4;

}

also die Funktion definiert.

Die Datei calc.c hab ich so geschrieben:

#include <iostream>

#include <string.h>

#include "calc.h"

using namespace std;

int p () {

erg=(c3*x*x*x) + (c2*x*x) + (c1*x) + K;

}

die Funktion wird berechnet.

Und die datei poly.C schaut so aus:

#include <iostream>

#include <strings.h>

#include "calc.h"

#include "calc.c"

using namespace std;

int p () {

int main (int argc, char **argv) {

cout << " erg= " << erg;

cout << " x = " << x;

cout << " c1 = " << c1;

cout << " c2 = " << c2;

cout << " c3 = " << c3;

cout << " K = " << K;

}

}

Aber wenn ich das Programm kompilieren will kommt immer die Fahlermeldung das die Parameter $1-$4 nicht definiert sind. Kann mir vielleicht jemand weiterhelfen? Wäre super. Ich bin noch ein Anfänger in C++.

Danke im Vorraus.

Geschrieben

1. mach ein Define in die Header, damit die nicht mehrmals eingebunden wird.

2. keine .c-Dateien includen.

3. was ist p? eine Funktion die int zurückgibt?! Nein, also mach ein struct draus.

Auf Parameter wird nicht mit $ Zugegriffen, dafür gibts im Funktionskopf (z.B. vom Konstruktor) die Parameterliste.

Geschrieben

4. Nenn die Sourcedateien .cpp oder .C. Viele Compiler entscheiden anhand der Dateierweiterung, welche Sprache benutzt wird, und .c steht dabei für C, nicht für C++.

5. Using-Direktiven in Headerdateien sind keine gute Idee.

6. Du musst den Rückgabewert in der Funktion mit einer return-Anweisung angeben.

7. Du kannst Funktionen nicht verschachteln (deine main-Funktion steht in einer weiteren p-Funktion).

8. <strings.h> ist kein Standardheader.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...