Compiler da und dort aber welchen?

Nachdem Du das oben hingekriegt hast:
und wenn das noch möglich wäre, die Funktion in eine externe Datei zu schreiben.
dazu legst du eine neue .c-Datei an (z.B. my_func.cpp) in die Du die Funktion func_alarm hineinkopierst. Aus der Datei mit der main-Funktion löschst Du sie dann. Weiterhin legst Du eine passende Headerdatei an (z.B. my_func.h) an, in die Du die Funktionsdeklaration schreibst. Diese entfernst Du aus der anderen Headerdatei. Nun mußt Du nur noch die neue Headerdatei (my_func.h) in beiden .cpp-Dateien includieren und fertig.

Ich hoffe, das ist nicht zu chaotisch erklärt. Wenn Du's nicht verstehst, sag Bescheid.;-)
 
Hoi thx mal für die schnelle Antwort nur funktioniert bei mir die Funktion nicht.

Da ich nicht weis wie ich "char" bei einer Funktion ausgebe.
Ausserdem check ich das mit der externen Funktion auch ned :'(.

sry, das ich kein neues Thema aufgmacht hab und das mit dem Status "erledigt" war mehr oder weniger ein versehen.
 
Zuletzt bearbeitet:
Wenn du die Funktion in eine externe Datei auslagern willst, brauchst du eine .cpp für den Code und eine .h für die Funktionsdeklaration (wurde eigentlich schon erklärt).
Warum verwendest du für deine Alarmfunktion eigentlich "double" als Rückgabewert? Die Funktion gibt nichts zurück und der Compiler müsste auch auch meckern, wenn ein Rückgabewert deklariert, aber dann nichts zurückgegeben wird (trifft auch auf main zu).

Hier mal der Code, wie funktionieren sollte:

Hauptdatei:
Code:
#include <iostream>
#include "func_alarm.h"

using namespace std;

int main()
{
  int i     = 0;
  int count = 0;
  
  cout << "Bitte geben sie ein, wieoft ich Piepsen soll: ";
  cin >> count;

  while( i < count )
  {
    func_alarm(i++);
  }
  
  return 0;
}

func_alarm.cpp:
Code:
#include <iostream>
#include "func_alarm.h"

using namespace std;

void func_alarm(int i)
{
    cout << "\aPieps (" << i + 1 << ")" << endl;
}

func_alarm.h:
Code:
void func_alarm(int i);
Gruß
MCoder
 
Sehr fein, thx jetzt hab ichs kapiert.
Hab nur noch eine kleine frage kann ich in der header Datei mehrere Funktionen deklarieren?

Und das ich die Funktion als double deklariert hab, hab ich gmacht weil es in meinem Buch so beschrieben war aber da hat sie auch eine Gleitkommazahl zurückgegeben.

thx nochma
 
Zurück