was wird denn ausgegeben?
Druckbare Version
was wird denn ausgegeben?
das da:Zitat:
Zitat von damaltor
das ist jetz aber eher schlecht... ;)
aber probier mal %e, %E oder %g und %G
quelle: http://www.cppreference.com/stdio/printf.html
Hallo,Zitat:
Zitat von damaltor
dieses Programm:
macht so eine Ausgabe (Anhang)Code://test kommazahlen
#include <stdio.h>
#include <math.h>
#include "asuro.h"
int main(void)
{
Init ();
SerWrite ("\r\n", 2);
int test1;
test1 = 11;
char string1 [3];
SerWrite ("int:\r\n",6);
sprintf (string1, "%d", test1);
SerWrite (string1, 2);
float test2;
test2 = 22.33;
char string2 [10];
SerWrite ("\r\n\r\n", 4);
SerWrite ("float \%f:\r\n",11);
sprintf (string2, "%f", test2);
SerWrite (string2, 5);
SerWrite ("\r\n\r\n", 4);
SerWrite ("float \%.2f:\r\n",13);
sprintf (string2, "%.2f", test2);
SerWrite (string2, 5);
SerWrite ("\r\n\r\n", 4);
SerWrite ("float \%2.2f:\r\n",14);
sprintf (string2, "%2.2f", test2);
SerWrite (string2, 5);
SerWrite ("\r\n\r\n", 4);
SerWrite ("float \%g:\r\n",11);
sprintf (string2, "%g", test2);
SerWrite (string2, 5);
SerWrite ("\r\n\r\n", 4);
SerWrite ("float \%G:\r\n",11);
sprintf (string2, "%G", test2);
SerWrite (string2, 5);
SerWrite ("\r\n\r\n", 4);
SerWrite ("float \%e:\r\n",11);
sprintf (string2, "%e", test2);
SerWrite (string2, 5);
SerWrite ("\r\n\r\n", 4);
SerWrite ("float \%E:\r\n",11);
sprintf (string2, "%E", test2);
SerWrite (string2, 5);
// fertig!
StatusLED (RED);
BackLED (ON, ON);
while (1);
return 0;
}
nach jeder klitzekleinen Änderung am Programm (z.B. Leerzeilen oder Kommentare einfügen) erscheinen andere Hieroglyphen.
Gruss
M.
das ist ja völlige grütze. =)
evtl probierst du mal ftoa (ähnlich wie itoa) und machst das ganze in 2 schritten...
scheint aber nur in einigen versionen der avr-gcc library verfügbar zu sein:
http://www.mikrocontroller.net/topic/1146
mit dtostrf (stdlib.h) gehts! :)
Gruss
M.
Hallo zusammen,
ein bisschen spät, aber besser als nie.
Ich konnte das Problem mit dem %f auch nachvollziehen. Auch bei mir ist keine vernünftige Ausgabe entstanden.
Aber wie ich sehe hast du eine andere Funktion gefunden, die ja geht.
Da kann ich jetzt nur staunen, denn dieses Ding kenn ich noch nichmal nach zig Jahren C-Hackerei.
Gruß Sternthaler
google hilft =) ich habs vorher auch noch nie gesehen.
Da sieht man mal, was uns die 'Neulinge' so alles noch beibringen können ;-) (T'schuldigung M1.R)
Gruß Sternthaler
Hallo Sternthaler,
freut mich, wenn ich auch mal was für euch Profis tun kann.Zitat:
Zitat von Sternthaler
Nun möchte ich aber doch gerne wissen, wie ich vom Status "Neuling" aufsteigen kann?
Wie heißt denn überhaupt die nächste Stufe?
Ist es notwendig eine Prüfung abzulegen?
Oder wird man/frau automatisch nach 10 Jahren Forumszugehörigkeit befördert? ;-)
Gruss
M.
Hrhr...
ich befördere dich hiermit zum Fortgeschrittenen User ;)
nein, such dir deinen status aus, ich denke wir haben hier im forum alles von profi-C-hackern bis hin zu power-googlern... :D
Hallo,
Ich weiß nicht, ob es noch von Bedeutung ist, es gibt aber verschiedene printf Bibliotheken und wenn man sprintf mit float nutzen will muß man auch die floatbibliothek einbinden.
Mit -lprintf_flt hinter LIBS in Makefile sollte sprintf mit float funktionieren :-k
Hab selber noch nicht getestet, aber mal irgendwo von gelesen.
Gruß Sebastian
na ja, wenn ich es mir aussuchen darf, bevorzuge ich ein "statusloses" Forumsdasein.Zitat:
Zitat von damaltor
@Sternthaler,
wie ist es dir gelungen, die automatische Beitrags-Quantitäts-Einstufung auszublenden?
Gruss
M.
ha.. das hab ich mich auch schon gefragt... =)
muss irgendwas wie "rang verstecken" sein oder so.. die anderen "offiziellen" einstufungen kannst du dir mit einem klick auf "Ränge" in der menüleiste ganz oben ansehen.
Hallo izaseba,
oh man, ist das einfach. Das ganze steht ja schon in dem, auf der CD mitgelieferten, Makefile. Da leider auskommentiert:
Also flux den # löschen, und schon kommt das aus dem Asuro raus:Zitat:
# Additional libraries
#
# Minimalistic printf version
#LDFLAGS += -Wl,-u,vfprintf -lprintf_min
#
# Floating point printf version (requires -lm below)
#LDFLAGS += -Wl,-u,vfprintf -lprintf_flt
(Minitestprogramm von dir M1.R)Zitat:
11
22.3300
Das nun die 'Kleinigkeit' von 83 Pages zum Asuro müssen ist dabei ja 'Nebensächlich' :(
@M1.R @damaltor
Aber was meint ihr eigendlich, dass ich irgendetwas ausgeblendet hätte?
Woher soll ich das denn wissen? Jetzt scheinst du M1.R das aber zu wissen, denn nun ist deine Beitrags-Quantitäts-Einstufung plötzlich weg.Zitat:
Zitat von M1.R
Teils du uns nun mit wie das geht?
Gruß Sternthaler, der Statuslose
tja sternthaler... so wie du M1.R siehst, sehen wir dich... statuslos :)
scheint wohl ein kleiner bug zu sein...
Hallo damaltor,
bist du noch, oder schon auf? (bei mir ist es noch)
Gruß der Statuslose (huch jetzt auch Namenslos)
ich hab ziemlich wahllos rumprobiert - kann sein, das es so geht - Anhang.Zitat:
Zitat von Sternthaler
(selber sieht man sich aber nur in ausgelogtem Zustand statuslos)
Gruss
M.
interessantes spielzeug... ich war übrigens noch auf... ;)