Gast
2009-01-29, 08:20:57
Folgender Code:
#include <stdio.h>
void main(void)
{ char ch1,ch2,ch3;
int in1,in2,in3;
float fl1,fl2,fl3;
ch1 = 'H';
ch2 = 300;
ch3 = 3.23e14;
printf("\n %c \n %c \n %c\n ", ch1,ch2,ch3);
in1 = 'H';
in2 = 300;
in3 = 3.23e14;
printf("\n %d \n %d \n %d\n ", in1,in2,in3);
fl1 = 'H';
fl2 = 300;
fl3 = 3.23e14;
printf("\n %f \n %f \n %f\n ", fl1,fl2,fl3);
}
Das Problem ist liegt nun bei der Ausgabe von float. fl1 ergibt noch 72.00000,
die restlichen 2 ergeben 0.000000.
Weiteres Problem gibt es mit diesem Code:
#include <stdio.h>
void main(void)
{ char ch1,ch2,ch3;
int in1,in2,in3;
float fl1,fl2 = 3.14,fl3;
ch1 = 'H';
ch2 = 300;
ch3 = 3.23e14;
printf("\n %c \n %c \n %c\n ", ch1,ch2,ch3);
in1 = 'H';
in2 = 300;
in3 = 3.23e14;
printf("\n %d \n %d \n %d\n ", in1,in2,in3);
fl1 = 'H';
// fl2 = 300;
fl3 = 3.14;
printf("\n %f \n %f \n %f\n ", fl1,fl2,fl3);
}
fl2 ist nun -0.00000000000000000000000000000000000000000000004950... und fl3 ist 0.00000000 obwohl ja beide den gleichen Wert haben, nur, dass fl2 bei der deklaration inititialisiert wurde und fl3 erst später im Programm. Woran könnte das liegen. Ein Compilerfehler? Wir verwenden das 68000 Visual Simulator.
Hab den ganzen Code auch in Visual Studio eingefügt und dort klappts ohne Probleme. Hat da jemand ne Idee?
#include <stdio.h>
void main(void)
{ char ch1,ch2,ch3;
int in1,in2,in3;
float fl1,fl2,fl3;
ch1 = 'H';
ch2 = 300;
ch3 = 3.23e14;
printf("\n %c \n %c \n %c\n ", ch1,ch2,ch3);
in1 = 'H';
in2 = 300;
in3 = 3.23e14;
printf("\n %d \n %d \n %d\n ", in1,in2,in3);
fl1 = 'H';
fl2 = 300;
fl3 = 3.23e14;
printf("\n %f \n %f \n %f\n ", fl1,fl2,fl3);
}
Das Problem ist liegt nun bei der Ausgabe von float. fl1 ergibt noch 72.00000,
die restlichen 2 ergeben 0.000000.
Weiteres Problem gibt es mit diesem Code:
#include <stdio.h>
void main(void)
{ char ch1,ch2,ch3;
int in1,in2,in3;
float fl1,fl2 = 3.14,fl3;
ch1 = 'H';
ch2 = 300;
ch3 = 3.23e14;
printf("\n %c \n %c \n %c\n ", ch1,ch2,ch3);
in1 = 'H';
in2 = 300;
in3 = 3.23e14;
printf("\n %d \n %d \n %d\n ", in1,in2,in3);
fl1 = 'H';
// fl2 = 300;
fl3 = 3.14;
printf("\n %f \n %f \n %f\n ", fl1,fl2,fl3);
}
fl2 ist nun -0.00000000000000000000000000000000000000000000004950... und fl3 ist 0.00000000 obwohl ja beide den gleichen Wert haben, nur, dass fl2 bei der deklaration inititialisiert wurde und fl3 erst später im Programm. Woran könnte das liegen. Ein Compilerfehler? Wir verwenden das 68000 Visual Simulator.
Hab den ganzen Code auch in Visual Studio eingefügt und dort klappts ohne Probleme. Hat da jemand ne Idee?