Suche hilfe bei meinem Prog. mit einer Funktion!
-
hi,
suche hilfe bei meiner funktion. Arbeite gerade ein buch durch und versuch mich
mitfunktionen die ausgelagert sind in einem Programm.Habe eine header datei erstellt:
#include <iostream>
using namespace std;int umrechnung();
double umrechnung(double fahrenheit)
{
double celsius;
cout << "Temperatur in Fahrenehit: ";
cin >> fahrenheit;
celsius = (fahrenheit - 32) * 5.0 / 9.0;
cout << fahrenheit
<< " Grad Fahrenheit entsprechen "
<< celsius
<< " Grad Celsius" << endl;}
Anschließend will ich dies in der main aufrufen:
#include "stdafx.h"
#include <iostream>using namespace std;
int main()
{
double umrechnung(20);}
was mache ich falsch?
Danke schon mal im voraus!
MfG Witzig
-
- CPP-Tags nutzen
- Gibst's Compilerfehler?
- In der Main deklarierst du eine Funktion, du willst sie aber aufrufen.
- Da sind noch mehr Fehler.
-
1)CPP Tags versteh ich net
steh nochziemlich am anfang.
2) leider nein!alles klar des hat schn mal geholfen!
-
Standardantwort:
1. Bitte benutze Quotes für dein Code ([C/C++]) im FORUM!!! (das meinte der vorredner)
2. Sag doch mal genauer deine "Fehlermeldung"Zur Fehlerbehebung:
1.int umrechnung(); double umrechnung(double fahrenheit)wasn nu? int oder double? da is ein fehler
2. wenn
#include <iostream> using namespace std; int umrechnung(); double umrechnung(double fahrenheit) { double celsius; cout << "Temperatur in Fahrenehit: "; cin >> fahrenheit; celsius = (fahrenheit - 32) * 5.0 / 9.0; cout << fahrenheit << " Grad Fahrenheit entsprechen " << celsius << " Grad Celsius" << endl; }in ner .h datei steht: TOTAL falsch. Im header deklarierst du nur funktionen. wenn du die funktion in einer anderen datei definieren möchtest, erstelle eine cpp datei (am schönsten mit dem gleichen namen wie die .h datei) und inkludierst die .h datei am anfang. in deiner main - cpp inkludierst du die gleiche .h wieder.
int main() { double umrechnung(20); }OU OU OU das tut beim lesen weh

ruf die funktion entwederint main() { umrechnung(20); return 0; }auf (kannsd dann nicht weiterarbeiten damit)
oder du verarbeitest dann den rückgabewertint main() { double ichbineindouble; ichbineindouble = umrechnung(20); /* * VERARBEITE ERGEBNIS */ return 0; }das sind jetzt die offensichlichsten fehler die ich gesehen habe.
Bitte schau dir nochmal das Kapitel mit Funktionsdeklarationen an. ... Bitte
-
was mir an der funktion auch noch auffällt: kein return wert. brauchst du in dem fall eigentlich auch nicht. darum kannst du die funktion gleich als void deklarieren.
void umrechnung(int iparameter);void umrechnung(int iparameter) { double celsius; cout << "Temperatur in Fahrenehit: "; cin >> fahrenheit; celsius = (fahrenheit - 32) * 5.0 / 9.0; cout << fahrenheit << " Grad Fahrenheit entsprechen " << celsius << " Grad Celsius" << endl; return; }
-
Ich würde dir darüber hinaus von einem globalen namespace abraten. Wenn man sich das erst einmal angewöhnt hat, kommt davon nicht mehr weg.
Das bedeutet, dass du anstatt:
cout << "Hallo" << endl;std::cout << "Hallo" << std::endl;verwendest.
Der Grund hierfür sind spätere überlagerte Deklarationen!
-
alles klar super danke!!!
sehr nett!so nun fuktioniert alles

Danke.