[comp.sys.mac.programmer] Problems with sscanf

roberts@crash.cts.com (Robert Schwalbe) (09/26/89)

Have there been any reports of problems with any of the C library
routines?  I'm having one heck of a time trying to get sscanf to
work with float's.  The following could get compiled as a MPW (3.0)
tool for displaying my problems.  The make file is also included.
 
#include <StdIO.h>
#include <Types.h>
 
main ()
{
 
       /*============*/
       /* PROBLEM #1 */
       /*============*/
       {
           Str255  string1 = "1.234\0";
           float   float1 = 0.0;
           int     retval = 0;
 
           /* Why does float1 not receive the value of 1.234 ? */
           printf("Expected results : %s\n", string1);
           retval = sscanf(string1, "%5.3f", &float1);
           printf("Actual results   : %5.3f   retval=%d\n\n", float1, retval);
       }
 
       /*===============*/
       /* SOLUTION #1 ? */
       /*===============*/
       {
           Str255      string2 = "4.321\0";
           extended    extended1 = 0.0;
           int         retval = 0;
 
           /* But extended1 does receive the value of 4.321.  Is sscanf */
           /* restricted to *only* work with extended's?    */
           printf("Expected results : %s\n", string2);
           retval = sscanf(string2, "%Lf", &extended1);
           printf("Actual results   : %5.3f   retval=%d\n\n", extended1, retval
       }
 
       /*============*/
       /* PROBLEM #2 */
       /*============*/
       /* Why does the following statement not get padded with zeroes? */
       printf("Expected results : 0000002.76\n");
       printf("Actual results   : %010.2f\n", 2.76);
}
 
 
   Link -w -c 'MPS ' -t MPST 6
       {OBJECTS} 6
       "{Libraries}"stubs.o 6
       "{CLibraries}"CRuntime.o 6
       "{Libraries}"Interface.o 6
       "{CLibraries}"StdCLib.o 6
       "{CLibraries}"CSANELib.o 6
       "{CLibraries}"Math.o 6
       "{CLibraries}"CInterface.o 6
       "{Libraries}"ToolLibs.o 6
       -o filename
 
NAME:  Robert Schwalbe
UUCP:  [ hplabs!hp-sdd | sdcsvax | nosc ]!crash!roberts
ARPA:  crash!roberts@nosc
INET:  roberts@crash.CTS.COM