Frage von 1Genius, 28

Kann ich mit int Werten in C einen float wert berechnen ohne dass ich dabei eine Fehlermeldung beim compilen erhalte?

ich denke dabei zum Beispiel an eine einfache Division

int main() {

int a = 2;

int b = 3;

printf("%f\n", division(a, b);

}

float division(int a, int b){

return a/b;

}

Antwort
von Namno, 21

Du musst ganz einfach explizit casten. Ich weiß nciht, womit du programmierst, aber in Java geht das, indem man z.B. (float) oder (int) vor die Rechnung schreibt. Dann weiß der Compiler, dass du das Ergebnis in diesem Datentyp haben willst, und ändert den Datentyp entsprechend (evtl. mit Datenverlust; ein int kann keine Nachkommastellen speichern)

Kommentar von NoHumanBeing ,

Ich weiß nciht, womit du programmierst, aber in Java

Er programmiert in C, steht in der Frage.

Funktioniert in C allerdings genau wie in Java. ;-)

Antwort
von NoHumanBeing, 16

Ändere Deine "division(...)"-Funktion.

float division (int a, int b) {
return (float)a / b;
}

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten