Im new to C and simply want to format a floating point number but i keep getting the wrong output.
When i pass diameter = 13.45 I get DiamString = 10.0, diameter = 29.44 DiamString = 20.0, and diameter = 34.31 DiamString = 30.0.Code:char DiamString[10]; void AddDiam (float diameter, void *LineNum) {//Takes the diameter and stores it to the 2nd line unsigned char *p1; p1=LineNum; sprintf(DiamString,"%2.1f",diameter); strcpy (p1+8,DiamString); }
Why is this happening??