Gast
#1467632
Welche *.h Datei muss ich einbinden, dammit ich mit CodeVisionAVR die Round-Funktion nutzen kann? floor(...); wird gefunden und round(...); nicht!
|
Anzeige
|
Fkt round wird nicht gefunden, floor schon
Gast
#1467632
Welche *.h Datei muss ich einbinden, dammit ich mit CodeVisionAVR die Round-Funktion nutzen kann? floor(...); wird gefunden und round(...); nicht! Moin, ist in "tgmath.h" und in "math.h" vorhanden. Gruß
Gast
#1467651
Erweiterungen nicht eingeschaltet? In C89 gab es diese Funktion noch nicht.
Gast
#1467671
math.h hab ich eingebunden, aber die Funktion round() wird trotzdem nicht gefunden tgmath.h hab ich nicht
Gast
#1467693
Wie kann ich die Funktion von Hand programmieren (float-Wert runden auf ganze Zahl)?
Gast
#1467722
So wie du es von Hand auch machen würdest. Nachschauen was hinter dem Komma kommt und dann entsprechend entscheiden ob auf oder abrunden. Die Header-Datei tgmath.h ist im AVR Studio 4.16 vorhanden kannst Du nach einer Registrierung kostenlos downladen: http://www.atmel.com/forms/software_download.asp?fn=dl_AvrStudio416Setup.exe Habe die tgmath.h mal angehängt, weiß aber nicht ob sie einzubinden geht.
Gast
#1467878
Anfänger schrien: >Welche *.h Datei muss ich einbinden, dammit ich mit CodeVisionAVR die >Round-Funktion nutzen kann? Andreas P. (madmax2006) schrieb: >Die Header-Datei tgmath.h ist im AVR Studio 4.16 vorhanden... Frage: was passt hier nicht zusammen? Zusatzfrage: Was ist der Unterschied zwischen Headerdatei und libray, und wie spielen die beiden zusammen? Zusatzfrage 2: Was steht zum Thema round() in der CodeVisionAVR-Doku? Oliver
Gast
#1467966
rofl Anfänger schrieb: > Wie kann ich die Funktion von Hand programmieren (float-Wert runden auf > ganze Zahl)? Gast schrieb: > So wie du es von Hand auch machen würdest. > Nachschauen was hinter dem Komma kommt und dann entsprechend entscheiden > ob auf oder abrunden. Wozu so kompliziert.
Gelingt zummindest meistens ;-) > > Gelingt zummindest meistens ;-) @TO Probiers aber auch mit c = -1.2; :-) Karl heinz Buchegger schrieb: > Probiers aber auch mit > > c = -1.2; > > :-) Jaha gut... bei negativen Zahlen dann halt minus 0.5 :-)
Verrate ihm doch nicht alles :-) Das Verstehen warum hier bei negative Zahlen eine andere Vorgehensweise notwendig ist, ist das zentrale Verständnis dessen, was bei einer Zuweisung double nach int wirklich passiert. Antwort schreiben |
Anzeige
|