-         

Ergebnis 1 bis 7 von 7

Thema: Vorschlag für die lib: PrintFloat

  1. #1
    Erfahrener Benutzer Begeisterter Techniker Avatar von M1.R
    Registriert seit
    02.06.2007
    Ort
    Freiburg
    Beiträge
    213

    Vorschlag für die lib: PrintFloat

    Anzeige

    Hallo,

    analog zur Funktion PrintInt habe ich die Funktion PrintFloat geschrieben.
    Code:
    void PrintFloat (float wert, char vorkomma, char nachkomma)
    // vorkomma + nachkomma max 7
    {
      char text [10];                        					
    
      dtostrf(wert, vorkomma, nachkomma, text);
      SerPrint (text);
    }
    Über Verbesserungsvorschläge bin ich wie immer dankbar.

    Beispielprogramm:
    Code:
    #include <stdlib.h>
    #include "asuro.h"
    
    void PrintFloat (float wert, char vorkomma, char nachkomma)
    // vorkomma + nachkomma max 7
    {
      char text [10];                        					
    
      dtostrf(wert, vorkomma, nachkomma, text);
      SerPrint (text);
    }
    
    
    int main(void)
    {
        Init ();
    
    	SerWrite ("\r\n", 2); 
    	PrintFloat (123.4567, 3, 4);
    	SerWrite ("\r\n", 2);
    
    	SerWrite ("\r\n", 2); 
    	PrintFloat (-123.4567, 5, 2);
    	SerWrite ("\r\n", 2);
    
    	SerWrite ("\r\n", 2); 
    	PrintFloat (-1.234567, 1, 6);
    	SerWrite ("\r\n", 2);
    
    	SerWrite ("\r\n", 2); 
    	PrintFloat (1.234567, 1, 3);
    	SerWrite ("\r\n", 2);
    
        while (1);
        return 0;
    }
    Gruss
    M.

  2. #2
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Jena
    Alter
    31
    Beiträge
    3.912
    wäre ne idee für die lib. nicht schlecht.. die stdlib.h, muss die dazu mit eingebunden werden?
    kleinschreibung ist cool!

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    29.05.2005
    Beiträge
    1.018
    Hallo M1.R,
    ja, scheint mir eine sinvolle Lösung für das vermaledeite sprintf (xx, "%f", yy)-Problem zu sein.

    Das mit dem eventeull notwendigen #include kann man dann ja in der Source-Datei zu dieser Funktion lösen, so dass der Benutzer der Lib da nichts mit zu hat.

    Ähhm, nur so am Rande:
    Wäre es nicht besser gewesen, diesen Vorschlag direkt in m.a.r.v.i.n.s Thread neue Asuro Lib V2.70 (Release Candidate 3) zu schreiben?

    Gruß Sternthaler
    Lieber Asuro programieren als arbeiten gehen.

  4. #4
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Jena
    Alter
    31
    Beiträge
    3.912
    hmm vermutlich schon, aber so schlimm ist das nicht... es hat bewirkt was es sollte. evl könntest du, M1.R, deinen ersten beitrag bearbeiten und den titlel so ändern dass man sieht dass es um eine eventuelle aufnahme in die lib geht.
    kleinschreibung ist cool!

  5. #5
    Erfahrener Benutzer Begeisterter Techniker Avatar von M1.R
    Registriert seit
    02.06.2007
    Ort
    Freiburg
    Beiträge
    213
    Zitat Zitat von damaltor
    die stdlib.h, muss die dazu mit eingebunden werden?
    nein - wird in der asuro.h (lib 2.7) eingebunden
    Gruss
    M.

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    45
    Beiträge
    2.236
    Hallo M1.R,

    Frage, wozu braucht man auf dem Asuro Fließkommazahlen ?

    Gruß Sebastian

    EDIT:
    Ich sehe schon http://www.roboternetz.de/phpBB2/viewtopic.php?p=328506
    sonst hätte ich den Vorschlag gemacht, für die wenigen Fälle, wo man sowas braucht (Batteriespannung ausgeben ?) auf Festkomma zu setzen, was sicherlich Resorcenschonender wäre.
    Software is like s e x: its better when its free.
    Linus Torvald

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    29.05.2005
    Beiträge
    1.018
    Hallo zusammen.

    @M1.R
    Deine Funktion ist in der nächsten Version 2.71 mit in der Lib.
    m.a.r.v.i.n hat mich gerade angemailt um mal darüber zu sehen.
    Somit ist mein Gejammer überflüßig gewesen.

    [EDIT]
    @izaseba
    Ich bin seit einiger Zeit dabei dem Kleinen beizubringen, dass er weiss wo er ist. Da hat sich so einiges an Mathe angesammelt und bis jetzt ist es (mir) noch nicht klar ob bzw. wie ich auf float verzichten kann. (Natürlich ist der Matheteil nicht auf meinem Mist gewachsen, sondern von kompetenten Forummitgliedern gemacht.)
    Das ganze ist unter Algorithmn zur Bahnplanung zu finden. Ist viel OT dabei, aber die ursprünglich gestellte Frage hat mich irgendwie interessiert.

    Gruß Sternthaler
    Lieber Asuro programieren als arbeiten gehen.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •