Problem mit Call by Value
-
Hallo zusammen;
ich bin anfänger und habe probleme mit der call by value methode.
also ich habe eine einfache funktion schreiben die mir einen x belibigen winkel in ein bogenmaß (rad) umwandelt.double y1=0; y1=rad_converter(45);
Hier die Funktion rad_converter
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> #include "bmp_lib.h" #define pi 3.1415926535897932394626 int rad_converter(int degree) { double rad=0; rad=degree*(pi/180); return rad; }
Die wertübergabe funktioniert nich, ich habe immer 0????
-
Der Typ der Rückgabe muss float oder double sein, dann klappt es (0.78 nach int gecastet ist 0).
-
_matze schrieb:
Der Typ der Rückgabe muss float oder double sein, dann klappt es (0.78 nach int gecastet ist 0).
rad ist doch double, in Zeile 10, oder??
-
in zeile 8 hängt auch der wurm drinne ;). Der Rückgabewert ist auch falsch.
-
rad schon, aber beim Zurückgeben des Wertes aus der Funktion wird es nach int gecastet. Probier mal so:
double rad_converter(int degree)
-
ich danke euch alle für eure zeit und antwort
schönen tag noch