1 2Input: 1.23 3 4strtoQ consumes 4 bytes and returns 17 5with bits = #3fff3ae1 47ae147a e147ae14 7ae147ae 6printf("%.35Lg") gives 1.23 7g_Qfmt(0) gives 4 bytes: "1.23" 8 9strtoIQ returns 17, consuming 4 bytes. 10fI[0] = #3fff3ae1 47ae147a e147ae14 7ae147ae 11= 1.23 12fI[1] = #3fff3ae1 47ae147a e147ae14 7ae147af 13= 1.2300000000000000000000000000000002 14fI[0] == strtod 15 16 17Input: 1.23e+20 18 19strtoQ consumes 8 bytes and returns 1 20with bits = #4041aabd f2145b43 0 0 21printf("%.35Lg") gives 123000000000000000000 22g_Qfmt(0) gives 8 bytes: "1.23e+20" 23 24strtoIQ returns 1, consuming 8 bytes. 25fI[0] == fI[1] = #4041aabd f2145b43 0 0 26= 123000000000000000000 27 28 29Input: 1.23e-20 30 31strtoQ consumes 8 bytes and returns 17 32with bits = #3fbcd0ae 4cf76753 9e4cbca ad934841 33printf("%.35Lg") gives 1.2299999999999999999999999999999999e-20 34g_Qfmt(0) gives 8 bytes: "1.23e-20" 35 36strtoIQ returns 17, consuming 8 bytes. 37fI[0] = #3fbcd0ae 4cf76753 9e4cbca ad934841 38= 1.2299999999999999999999999999999999e-20 39fI[1] = #3fbcd0ae 4cf76753 9e4cbca ad934842 40= 1.2300000000000000000000000000000001e-20 41fI[0] == strtod 42 43 44Input: 1.23456789 45 46strtoQ consumes 10 bytes and returns 17 47with bits = #3fff3c0c a4283de1 b7eb6945 1304948f 48printf("%.35Lg") gives 1.2345678899999999999999999999999999 49g_Qfmt(0) gives 10 bytes: "1.23456789" 50 51strtoIQ returns 17, consuming 10 bytes. 52fI[0] = #3fff3c0c a4283de1 b7eb6945 1304948f 53= 1.2345678899999999999999999999999999 54fI[1] = #3fff3c0c a4283de1 b7eb6945 13049490 55= 1.2345678900000000000000000000000001 56fI[0] == strtod 57 58 59Input: 1.23456589e+20 60 61strtoQ consumes 14 bytes and returns 1 62with bits = #4041ac53 7a660b99 74000000 0 63printf("%.35Lg") gives 123456589000000000000 64g_Qfmt(0) gives 14 bytes: "1.23456589e+20" 65 66strtoIQ returns 1, consuming 14 bytes. 67fI[0] == fI[1] = #4041ac53 7a660b99 74000000 0 68= 123456589000000000000 69 70 71Input: 1.23e+30 72 73strtoQ consumes 8 bytes and returns 1 74with bits = #4062f0cb 4e8fb79 4945600 0 75printf("%.35Lg") gives 1230000000000000000000000000000 76g_Qfmt(0) gives 8 bytes: "1.23e+30" 77 78strtoIQ returns 1, consuming 8 bytes. 79fI[0] == fI[1] = #4062f0cb 4e8fb79 4945600 0 80= 1230000000000000000000000000000 81 82 83Input: 1.23e-30 84 85strtoQ consumes 8 bytes and returns 17 86with bits = #3f9b8f28 66f5010a a9d63f9e d7e8ba14 87printf("%.35Lg") gives 1.2299999999999999999999999999999999e-30 88g_Qfmt(0) gives 8 bytes: "1.23e-30" 89 90strtoIQ returns 17, consuming 8 bytes. 91fI[0] = #3f9b8f28 66f5010a a9d63f9e d7e8ba14 92= 1.2299999999999999999999999999999999e-30 93fI[1] = #3f9b8f28 66f5010a a9d63f9e d7e8ba15 94= 1.2300000000000000000000000000000001e-30 95fI[0] == strtod 96 97 98Input: 1.23456789e-20 99 100strtoQ consumes 14 bytes and returns 33 101with bits = #3fbcd268 1471e7ad a6a4a029 d86c1fa2 102printf("%.35Lg") gives 1.2345678900000000000000000000000001e-20 103g_Qfmt(0) gives 14 bytes: "1.23456789e-20" 104 105strtoIQ returns 33, consuming 14 bytes. 106fI[0] = #3fbcd268 1471e7ad a6a4a029 d86c1fa1 107= 1.2345678899999999999999999999999999e-20 108fI[1] = #3fbcd268 1471e7ad a6a4a029 d86c1fa2 109= 1.2345678900000000000000000000000001e-20 110fI[1] == strtod 111 112 113Input: 1.23456789e-30 114 115strtoQ consumes 14 bytes and returns 17 116with bits = #3f9b90a3 e33bbd99 51f85855 5a6b19d4 117printf("%.35Lg") gives 1.23456789e-30 118g_Qfmt(0) gives 14 bytes: "1.23456789e-30" 119 120strtoIQ returns 17, consuming 14 bytes. 121fI[0] = #3f9b90a3 e33bbd99 51f85855 5a6b19d4 122= 1.23456789e-30 123fI[1] = #3f9b90a3 e33bbd99 51f85855 5a6b19d5 124= 1.2345678900000000000000000000000001e-30 125fI[0] == strtod 126 127 128Input: 1.234567890123456789 129 130strtoQ consumes 20 bytes and returns 17 131with bits = #3fff3c0c a428c59f b71a4194 68dd175b 132printf("%.35Lg") gives 1.234567890123456789 133g_Qfmt(0) gives 20 bytes: "1.234567890123456789" 134 135strtoIQ returns 17, consuming 20 bytes. 136fI[0] = #3fff3c0c a428c59f b71a4194 68dd175b 137= 1.234567890123456789 138fI[1] = #3fff3c0c a428c59f b71a4194 68dd175c 139= 1.2345678901234567890000000000000002 140fI[0] == strtod 141 142 143Input: 1.23456789012345678901234567890123456789 144 145strtoQ consumes 40 bytes and returns 17 146with bits = #3fff3c0c a428c59f b71a7be1 6b6b6d5b 147printf("%.35Lg") gives 1.2345678901234567890123456789012346 148g_Qfmt(0) gives 36 bytes: "1.2345678901234567890123456789012346" 149 150strtoIQ returns 17, consuming 40 bytes. 151fI[0] = #3fff3c0c a428c59f b71a7be1 6b6b6d5b 152= 1.2345678901234567890123456789012346 153fI[1] = #3fff3c0c a428c59f b71a7be1 6b6b6d5c 154= 1.2345678901234567890123456789012347 155fI[0] == strtod 156 157 158Input: 1.23e306 159 160strtoQ consumes 8 bytes and returns 33 161with bits = #43f7c067 6cd1c61f 4daac5f1 e9fa3b55 162printf("%.35Lg") gives 1.23e+306 163g_Qfmt(0) gives 9 bytes: "1.23e+306" 164 165strtoIQ returns 33, consuming 8 bytes. 166fI[0] = #43f7c067 6cd1c61f 4daac5f1 e9fa3b54 167= 1.2299999999999999999999999999999999e+306 168fI[1] = #43f7c067 6cd1c61f 4daac5f1 e9fa3b55 169= 1.23e+306 170fI[1] == strtod 171 172 173Input: 1.23e-306 174 175strtoQ consumes 9 bytes and returns 17 176with bits = #3c06ba3b 85da396e 7e496ab7 d233c3dd 177printf("%.35Lg") gives 1.23e-306 178g_Qfmt(0) gives 9 bytes: "1.23e-306" 179 180strtoIQ returns 17, consuming 9 bytes. 181fI[0] = #3c06ba3b 85da396e 7e496ab7 d233c3dd 182= 1.23e-306 183fI[1] = #3c06ba3b 85da396e 7e496ab7 d233c3de 184= 1.2300000000000000000000000000000001e-306 185fI[0] == strtod 186 187 188Input: 1.23e-320 189 190strtoQ consumes 9 bytes and returns 33 191with bits = #3bd83731 86e30898 7e33b2e8 355f847b 192printf("%.35Lg") gives 1.2300000000000000000000000000000001e-320 193g_Qfmt(0) gives 9 bytes: "1.23e-320" 194 195strtoIQ returns 33, consuming 9 bytes. 196fI[0] = #3bd83731 86e30898 7e33b2e8 355f847a 197= 1.2299999999999999999999999999999999e-320 198fI[1] = #3bd83731 86e30898 7e33b2e8 355f847b 199= 1.2300000000000000000000000000000001e-320 200fI[1] == strtod 201 202 203Input: 1.23e-20 204 205strtoQ consumes 8 bytes and returns 17 206with bits = #3fbcd0ae 4cf76753 9e4cbca ad934841 207printf("%.35Lg") gives 1.2299999999999999999999999999999999e-20 208g_Qfmt(0) gives 8 bytes: "1.23e-20" 209 210strtoIQ returns 17, consuming 8 bytes. 211fI[0] = #3fbcd0ae 4cf76753 9e4cbca ad934841 212= 1.2299999999999999999999999999999999e-20 213fI[1] = #3fbcd0ae 4cf76753 9e4cbca ad934842 214= 1.2300000000000000000000000000000001e-20 215fI[0] == strtod 216 217 218Input: 1.23456789e307 219 220strtoQ consumes 14 bytes and returns 17 221with bits = #43fb194b 14bdaecd bcea468c 902464cf 222printf("%.35Lg") gives 1.2345678899999999999999999999999999e+307 223g_Qfmt(0) gives 15 bytes: "1.23456789e+307" 224 225strtoIQ returns 17, consuming 14 bytes. 226fI[0] = #43fb194b 14bdaecd bcea468c 902464cf 227= 1.2345678899999999999999999999999999e+307 228fI[1] = #43fb194b 14bdaecd bcea468c 902464d0 229= 1.2345678900000000000000000000000001e+307 230fI[0] == strtod 231 232 233Input: 1.23456589e-307 234 235strtoQ consumes 15 bytes and returns 17 236with bits = #3c036319 6bb9845f a6d234e3 39163574 237printf("%.35Lg") gives 1.23456589e-307 238g_Qfmt(0) gives 15 bytes: "1.23456589e-307" 239 240strtoIQ returns 17, consuming 15 bytes. 241fI[0] = #3c036319 6bb9845f a6d234e3 39163574 242= 1.23456589e-307 243fI[1] = #3c036319 6bb9845f a6d234e3 39163575 244= 1.2345658900000000000000000000000002e-307 245fI[0] == strtod 246 247 248Input: 1.234567890123456789 249 250strtoQ consumes 20 bytes and returns 17 251with bits = #3fff3c0c a428c59f b71a4194 68dd175b 252printf("%.35Lg") gives 1.234567890123456789 253g_Qfmt(0) gives 20 bytes: "1.234567890123456789" 254 255strtoIQ returns 17, consuming 20 bytes. 256fI[0] = #3fff3c0c a428c59f b71a4194 68dd175b 257= 1.234567890123456789 258fI[1] = #3fff3c0c a428c59f b71a4194 68dd175c 259= 1.2345678901234567890000000000000002 260fI[0] == strtod 261 262 263Input: 1.234567890123456789e301 264 265strtoQ consumes 24 bytes and returns 33 266with bits = #43e726f5 175f5641 3017ea80 763990ef 267printf("%.35Lg") gives 1.2345678901234567890000000000000001e+301 268g_Qfmt(0) gives 25 bytes: "1.234567890123456789e+301" 269 270strtoIQ returns 33, consuming 24 bytes. 271fI[0] = #43e726f5 175f5641 3017ea80 763990ee 272= 1.2345678901234567889999999999999999e+301 273fI[1] = #43e726f5 175f5641 3017ea80 763990ef 274= 1.2345678901234567890000000000000001e+301 275fI[1] == strtod 276 277 278Input: 1.234567890123456789e-301 279 280strtoQ consumes 25 bytes and returns 17 281with bits = #3c1752a6 4e34ba0d 35b19b04 3222fce5 282printf("%.35Lg") gives 1.234567890123456789e-301 283g_Qfmt(0) gives 25 bytes: "1.234567890123456789e-301" 284 285strtoIQ returns 17, consuming 25 bytes. 286fI[0] = #3c1752a6 4e34ba0d 35b19b04 3222fce5 287= 1.234567890123456789e-301 288fI[1] = #3c1752a6 4e34ba0d 35b19b04 3222fce6 289= 1.2345678901234567890000000000000002e-301 290fI[0] == strtod 291 292 293Input: 1.234567890123456789e-321 294 295strtoQ consumes 25 bytes and returns 17 296with bits = #3bd4f3c2 3699d4db 99d1ea94 2fecd7de 297printf("%.35Lg") gives 1.234567890123456789e-321 298g_Qfmt(0) gives 25 bytes: "1.234567890123456789e-321" 299 300strtoIQ returns 17, consuming 25 bytes. 301fI[0] = #3bd4f3c2 3699d4db 99d1ea94 2fecd7de 302= 1.234567890123456789e-321 303fI[1] = #3bd4f3c2 3699d4db 99d1ea94 2fecd7df 304= 1.2345678901234567890000000000000001e-321 305fI[0] == strtod 306 307 308Input: 1e23 309 310strtoQ consumes 4 bytes and returns 1 311with bits = #404b52d0 2c7e14af 68000000 0 312printf("%.35Lg") gives 100000000000000000000000 313g_Qfmt(0) gives 5 bytes: "1e+23" 314 315strtoIQ returns 1, consuming 4 bytes. 316fI[0] == fI[1] = #404b52d0 2c7e14af 68000000 0 317= 100000000000000000000000 318 319 320Input: 1e310 321 322strtoQ consumes 5 bytes and returns 33 323with bits = #4404bd03 c8140697 9e9ff00e fefd4cbd 324printf("%.35Lg") gives 1e+310 325g_Qfmt(0) gives 6 bytes: "1e+310" 326 327strtoIQ returns 33, consuming 5 bytes. 328fI[0] = #4404bd03 c8140697 9e9ff00e fefd4cbc 329= 9.9999999999999999999999999999999992e+309 330fI[1] = #4404bd03 c8140697 9e9ff00e fefd4cbd 331= 1e+310 332fI[1] == strtod 333 334 335Input: 9.0259718793241475e-277 336 337strtoQ consumes 23 bytes and returns 17 338with bits = #3c69ffff ffffffff f9ed5779 ac118fe1 339printf("%.35Lg") gives 9.0259718793241474999999999999999997e-277 340g_Qfmt(0) gives 23 bytes: "9.0259718793241475e-277" 341 342strtoIQ returns 17, consuming 23 bytes. 343fI[0] = #3c69ffff ffffffff f9ed5779 ac118fe1 344= 9.0259718793241474999999999999999997e-277 345fI[1] = #3c69ffff ffffffff f9ed5779 ac118fe2 346= 9.0259718793241475000000000000000006e-277 347fI[0] == strtod 348 349 350Input: 9.025971879324147880346310405869e-277 351 352strtoQ consumes 37 bytes and returns 33 353with bits = #3c6a0000 0 0 9a 354printf("%.35Lg") gives 9.0259718793241478803463104058690004e-277 355g_Qfmt(0) gives 37 bytes: "9.025971879324147880346310405869e-277" 356 357strtoIQ returns 33, consuming 37 bytes. 358fI[0] = #3c6a0000 0 0 99 359= 9.0259718793241478803463104058689987e-277 360fI[1] = #3c6a0000 0 0 9a 361= 9.0259718793241478803463104058690004e-277 362fI[1] == strtod 363 364 365Input: 9.025971879324147880346310405868e-277 366 367strtoQ consumes 37 bytes and returns 17 368with bits = #3c69ffff ffffffff ffffffff fffffcb5 369printf("%.35Lg") gives 9.025971879324147880346310405868e-277 370g_Qfmt(0) gives 37 bytes: "9.025971879324147880346310405868e-277" 371 372strtoIQ returns 17, consuming 37 bytes. 373fI[0] = #3c69ffff ffffffff ffffffff fffffcb5 374= 9.025971879324147880346310405868e-277 375fI[1] = #3c69ffff ffffffff ffffffff fffffcb6 376= 9.0259718793241478803463104058680009e-277 377fI[0] == strtod 378 379 380Input: 2.2250738585072014e-308 381 382strtoQ consumes 23 bytes and returns 33 383with bits = #3c010000 0 8c304c cf867de0 384printf("%.35Lg") gives 2.2250738585072014000000000000000001e-308 385g_Qfmt(0) gives 23 bytes: "2.2250738585072014e-308" 386 387strtoIQ returns 33, consuming 23 bytes. 388fI[0] = #3c010000 0 8c304c cf867ddf 389= 2.2250738585072013999999999999999997e-308 390fI[1] = #3c010000 0 8c304c cf867de0 391= 2.2250738585072014000000000000000001e-308 392fI[1] == strtod 393 394 395Input: 2.2250738585072013e-308 396 397strtoQ consumes 23 bytes and returns 33 398with bits = #3c00ffff ffffffff fa9e4c4f 4c1e8a10 399printf("%.35Lg") gives 2.2250738585072013e-308 400g_Qfmt(0) gives 23 bytes: "2.2250738585072013e-308" 401 402strtoIQ returns 33, consuming 23 bytes. 403fI[0] = #3c00ffff ffffffff fa9e4c4f 4c1e8a0f 404= 2.2250738585072012999999999999999998e-308 405fI[1] = #3c00ffff ffffffff fa9e4c4f 4c1e8a10 406= 2.2250738585072013e-308 407fI[1] == strtod 408 409Rounding mode for strtor... changed from 1 (nearest) to 0 (toward zero) 410 411Input: 1.1 412 413strtoQ consumes 3 bytes and returns 17 414with bits = #3fff1999 99999999 99999999 99999999 415printf("%.35Lg") gives 1.0999999999999999999999999999999999 416g_Qfmt(0) gives 36 bytes: "1.0999999999999999999999999999999999" 417 418strtoIQ returns 33, consuming 3 bytes. 419fI[0] = #3fff1999 99999999 99999999 99999999 420= 1.0999999999999999999999999999999999 421fI[1] = #3fff1999 99999999 99999999 9999999a 422= 1.1000000000000000000000000000000001 423fI[0] == strtod 424 425 426Input: -1.1 427 428strtoQ consumes 4 bytes and returns 25 429with bits = #bfff1999 99999999 99999999 99999999 430printf("%.35Lg") gives -1.0999999999999999999999999999999999 431g_Qfmt(0) gives 37 bytes: "-1.0999999999999999999999999999999999" 432 433strtoIQ returns 41, consuming 4 bytes. 434fI[0] = #bfff1999 99999999 99999999 9999999a 435= -1.1000000000000000000000000000000001 436fI[1] = #bfff1999 99999999 99999999 99999999 437= -1.0999999999999999999999999999999999 438fI[1] == strtod 439 440 441Input: 1.2 442 443strtoQ consumes 3 bytes and returns 17 444with bits = #3fff3333 33333333 33333333 33333333 445printf("%.35Lg") gives 1.2 446g_Qfmt(0) gives 3 bytes: "1.2" 447 448strtoIQ returns 17, consuming 3 bytes. 449fI[0] = #3fff3333 33333333 33333333 33333333 450= 1.2 451fI[1] = #3fff3333 33333333 33333333 33333334 452= 1.2000000000000000000000000000000002 453fI[0] == strtod 454 455 456Input: -1.2 457 458strtoQ consumes 4 bytes and returns 25 459with bits = #bfff3333 33333333 33333333 33333333 460printf("%.35Lg") gives -1.2 461g_Qfmt(0) gives 4 bytes: "-1.2" 462 463strtoIQ returns 25, consuming 4 bytes. 464fI[0] = #bfff3333 33333333 33333333 33333334 465= -1.2000000000000000000000000000000002 466fI[1] = #bfff3333 33333333 33333333 33333333 467= -1.2 468fI[1] == strtod 469 470 471Input: 1.3 472 473strtoQ consumes 3 bytes and returns 17 474with bits = #3fff4ccc cccccccc cccccccc cccccccc 475printf("%.35Lg") gives 1.2999999999999999999999999999999998 476g_Qfmt(0) gives 36 bytes: "1.2999999999999999999999999999999998" 477 478strtoIQ returns 33, consuming 3 bytes. 479fI[0] = #3fff4ccc cccccccc cccccccc cccccccc 480= 1.2999999999999999999999999999999998 481fI[1] = #3fff4ccc cccccccc cccccccc cccccccd 482= 1.3 483fI[0] == strtod 484 485 486Input: -1.3 487 488strtoQ consumes 4 bytes and returns 25 489with bits = #bfff4ccc cccccccc cccccccc cccccccc 490printf("%.35Lg") gives -1.2999999999999999999999999999999998 491g_Qfmt(0) gives 37 bytes: "-1.2999999999999999999999999999999998" 492 493strtoIQ returns 41, consuming 4 bytes. 494fI[0] = #bfff4ccc cccccccc cccccccc cccccccd 495= -1.3 496fI[1] = #bfff4ccc cccccccc cccccccc cccccccc 497= -1.2999999999999999999999999999999998 498fI[1] == strtod 499 500 501Input: 1.4 502 503strtoQ consumes 3 bytes and returns 17 504with bits = #3fff6666 66666666 66666666 66666666 505printf("%.35Lg") gives 1.3999999999999999999999999999999999 506g_Qfmt(0) gives 3 bytes: "1.4" 507 508strtoIQ returns 17, consuming 3 bytes. 509fI[0] = #3fff6666 66666666 66666666 66666666 510= 1.3999999999999999999999999999999999 511fI[1] = #3fff6666 66666666 66666666 66666667 512= 1.4000000000000000000000000000000001 513fI[0] == strtod 514 515 516Input: -1.4 517 518strtoQ consumes 4 bytes and returns 25 519with bits = #bfff6666 66666666 66666666 66666666 520printf("%.35Lg") gives -1.3999999999999999999999999999999999 521g_Qfmt(0) gives 4 bytes: "-1.4" 522 523strtoIQ returns 25, consuming 4 bytes. 524fI[0] = #bfff6666 66666666 66666666 66666667 525= -1.4000000000000000000000000000000001 526fI[1] = #bfff6666 66666666 66666666 66666666 527= -1.3999999999999999999999999999999999 528fI[1] == strtod 529 530 531Input: 1.5 532 533strtoQ consumes 3 bytes and returns 1 534with bits = #3fff8000 0 0 0 535printf("%.35Lg") gives 1.5 536g_Qfmt(0) gives 3 bytes: "1.5" 537 538strtoIQ returns 1, consuming 3 bytes. 539fI[0] == fI[1] = #3fff8000 0 0 0 540= 1.5 541 542 543Input: -1.5 544 545strtoQ consumes 4 bytes and returns 9 546with bits = #bfff8000 0 0 0 547printf("%.35Lg") gives -1.5 548g_Qfmt(0) gives 4 bytes: "-1.5" 549 550strtoIQ returns 9, consuming 4 bytes. 551fI[0] == fI[1] = #bfff8000 0 0 0 552= -1.5 553 554 555Input: 1.6 556 557strtoQ consumes 3 bytes and returns 17 558with bits = #3fff9999 99999999 99999999 99999999 559printf("%.35Lg") gives 1.5999999999999999999999999999999999 560g_Qfmt(0) gives 36 bytes: "1.5999999999999999999999999999999999" 561 562strtoIQ returns 33, consuming 3 bytes. 563fI[0] = #3fff9999 99999999 99999999 99999999 564= 1.5999999999999999999999999999999999 565fI[1] = #3fff9999 99999999 99999999 9999999a 566= 1.6000000000000000000000000000000001 567fI[0] == strtod 568 569 570Input: -1.6 571 572strtoQ consumes 4 bytes and returns 25 573with bits = #bfff9999 99999999 99999999 99999999 574printf("%.35Lg") gives -1.5999999999999999999999999999999999 575g_Qfmt(0) gives 37 bytes: "-1.5999999999999999999999999999999999" 576 577strtoIQ returns 41, consuming 4 bytes. 578fI[0] = #bfff9999 99999999 99999999 9999999a 579= -1.6000000000000000000000000000000001 580fI[1] = #bfff9999 99999999 99999999 99999999 581= -1.5999999999999999999999999999999999 582fI[1] == strtod 583 584 585Input: 1.7 586 587strtoQ consumes 3 bytes and returns 17 588with bits = #3fffb333 33333333 33333333 33333333 589printf("%.35Lg") gives 1.7 590g_Qfmt(0) gives 3 bytes: "1.7" 591 592strtoIQ returns 17, consuming 3 bytes. 593fI[0] = #3fffb333 33333333 33333333 33333333 594= 1.7 595fI[1] = #3fffb333 33333333 33333333 33333334 596= 1.7000000000000000000000000000000002 597fI[0] == strtod 598 599 600Input: -1.7 601 602strtoQ consumes 4 bytes and returns 25 603with bits = #bfffb333 33333333 33333333 33333333 604printf("%.35Lg") gives -1.7 605g_Qfmt(0) gives 4 bytes: "-1.7" 606 607strtoIQ returns 25, consuming 4 bytes. 608fI[0] = #bfffb333 33333333 33333333 33333334 609= -1.7000000000000000000000000000000002 610fI[1] = #bfffb333 33333333 33333333 33333333 611= -1.7 612fI[1] == strtod 613 614 615Input: 1.8 616 617strtoQ consumes 3 bytes and returns 17 618with bits = #3fffcccc cccccccc cccccccc cccccccc 619printf("%.35Lg") gives 1.7999999999999999999999999999999998 620g_Qfmt(0) gives 36 bytes: "1.7999999999999999999999999999999998" 621 622strtoIQ returns 33, consuming 3 bytes. 623fI[0] = #3fffcccc cccccccc cccccccc cccccccc 624= 1.7999999999999999999999999999999998 625fI[1] = #3fffcccc cccccccc cccccccc cccccccd 626= 1.8 627fI[0] == strtod 628 629 630Input: -1.8 631 632strtoQ consumes 4 bytes and returns 25 633with bits = #bfffcccc cccccccc cccccccc cccccccc 634printf("%.35Lg") gives -1.7999999999999999999999999999999998 635g_Qfmt(0) gives 37 bytes: "-1.7999999999999999999999999999999998" 636 637strtoIQ returns 41, consuming 4 bytes. 638fI[0] = #bfffcccc cccccccc cccccccc cccccccd 639= -1.8 640fI[1] = #bfffcccc cccccccc cccccccc cccccccc 641= -1.7999999999999999999999999999999998 642fI[1] == strtod 643 644 645Input: 1.9 646 647strtoQ consumes 3 bytes and returns 17 648with bits = #3fffe666 66666666 66666666 66666666 649printf("%.35Lg") gives 1.8999999999999999999999999999999999 650g_Qfmt(0) gives 3 bytes: "1.9" 651 652strtoIQ returns 17, consuming 3 bytes. 653fI[0] = #3fffe666 66666666 66666666 66666666 654= 1.8999999999999999999999999999999999 655fI[1] = #3fffe666 66666666 66666666 66666667 656= 1.9000000000000000000000000000000001 657fI[0] == strtod 658 659 660Input: -1.9 661 662strtoQ consumes 4 bytes and returns 25 663with bits = #bfffe666 66666666 66666666 66666666 664printf("%.35Lg") gives -1.8999999999999999999999999999999999 665g_Qfmt(0) gives 4 bytes: "-1.9" 666 667strtoIQ returns 25, consuming 4 bytes. 668fI[0] = #bfffe666 66666666 66666666 66666667 669= -1.9000000000000000000000000000000001 670fI[1] = #bfffe666 66666666 66666666 66666666 671= -1.8999999999999999999999999999999999 672fI[1] == strtod 673 674Rounding mode for strtor... changed from 0 (toward zero) to 1 (nearest) 675 676Input: 1.1 677 678strtoQ consumes 3 bytes and returns 33 679with bits = #3fff1999 99999999 99999999 9999999a 680printf("%.35Lg") gives 1.1000000000000000000000000000000001 681g_Qfmt(0) gives 3 bytes: "1.1" 682 683strtoIQ returns 33, consuming 3 bytes. 684fI[0] = #3fff1999 99999999 99999999 99999999 685= 1.0999999999999999999999999999999999 686fI[1] = #3fff1999 99999999 99999999 9999999a 687= 1.1000000000000000000000000000000001 688fI[1] == strtod 689 690 691Input: -1.1 692 693strtoQ consumes 4 bytes and returns 41 694with bits = #bfff1999 99999999 99999999 9999999a 695printf("%.35Lg") gives -1.1000000000000000000000000000000001 696g_Qfmt(0) gives 4 bytes: "-1.1" 697 698strtoIQ returns 41, consuming 4 bytes. 699fI[0] = #bfff1999 99999999 99999999 9999999a 700= -1.1000000000000000000000000000000001 701fI[1] = #bfff1999 99999999 99999999 99999999 702= -1.0999999999999999999999999999999999 703fI[0] == strtod 704 705 706Input: 1.2 707 708strtoQ consumes 3 bytes and returns 17 709with bits = #3fff3333 33333333 33333333 33333333 710printf("%.35Lg") gives 1.2 711g_Qfmt(0) gives 3 bytes: "1.2" 712 713strtoIQ returns 17, consuming 3 bytes. 714fI[0] = #3fff3333 33333333 33333333 33333333 715= 1.2 716fI[1] = #3fff3333 33333333 33333333 33333334 717= 1.2000000000000000000000000000000002 718fI[0] == strtod 719 720 721Input: -1.2 722 723strtoQ consumes 4 bytes and returns 25 724with bits = #bfff3333 33333333 33333333 33333333 725printf("%.35Lg") gives -1.2 726g_Qfmt(0) gives 4 bytes: "-1.2" 727 728strtoIQ returns 25, consuming 4 bytes. 729fI[0] = #bfff3333 33333333 33333333 33333334 730= -1.2000000000000000000000000000000002 731fI[1] = #bfff3333 33333333 33333333 33333333 732= -1.2 733fI[1] == strtod 734 735 736Input: 1.3 737 738strtoQ consumes 3 bytes and returns 33 739with bits = #3fff4ccc cccccccc cccccccc cccccccd 740printf("%.35Lg") gives 1.3 741g_Qfmt(0) gives 3 bytes: "1.3" 742 743strtoIQ returns 33, consuming 3 bytes. 744fI[0] = #3fff4ccc cccccccc cccccccc cccccccc 745= 1.2999999999999999999999999999999998 746fI[1] = #3fff4ccc cccccccc cccccccc cccccccd 747= 1.3 748fI[1] == strtod 749 750 751Input: -1.3 752 753strtoQ consumes 4 bytes and returns 41 754with bits = #bfff4ccc cccccccc cccccccc cccccccd 755printf("%.35Lg") gives -1.3 756g_Qfmt(0) gives 4 bytes: "-1.3" 757 758strtoIQ returns 41, consuming 4 bytes. 759fI[0] = #bfff4ccc cccccccc cccccccc cccccccd 760= -1.3 761fI[1] = #bfff4ccc cccccccc cccccccc cccccccc 762= -1.2999999999999999999999999999999998 763fI[0] == strtod 764 765 766Input: 1.4 767 768strtoQ consumes 3 bytes and returns 17 769with bits = #3fff6666 66666666 66666666 66666666 770printf("%.35Lg") gives 1.3999999999999999999999999999999999 771g_Qfmt(0) gives 3 bytes: "1.4" 772 773strtoIQ returns 17, consuming 3 bytes. 774fI[0] = #3fff6666 66666666 66666666 66666666 775= 1.3999999999999999999999999999999999 776fI[1] = #3fff6666 66666666 66666666 66666667 777= 1.4000000000000000000000000000000001 778fI[0] == strtod 779 780 781Input: -1.4 782 783strtoQ consumes 4 bytes and returns 25 784with bits = #bfff6666 66666666 66666666 66666666 785printf("%.35Lg") gives -1.3999999999999999999999999999999999 786g_Qfmt(0) gives 4 bytes: "-1.4" 787 788strtoIQ returns 25, consuming 4 bytes. 789fI[0] = #bfff6666 66666666 66666666 66666667 790= -1.4000000000000000000000000000000001 791fI[1] = #bfff6666 66666666 66666666 66666666 792= -1.3999999999999999999999999999999999 793fI[1] == strtod 794 795 796Input: 1.5 797 798strtoQ consumes 3 bytes and returns 1 799with bits = #3fff8000 0 0 0 800printf("%.35Lg") gives 1.5 801g_Qfmt(0) gives 3 bytes: "1.5" 802 803strtoIQ returns 1, consuming 3 bytes. 804fI[0] == fI[1] = #3fff8000 0 0 0 805= 1.5 806 807 808Input: -1.5 809 810strtoQ consumes 4 bytes and returns 9 811with bits = #bfff8000 0 0 0 812printf("%.35Lg") gives -1.5 813g_Qfmt(0) gives 4 bytes: "-1.5" 814 815strtoIQ returns 9, consuming 4 bytes. 816fI[0] == fI[1] = #bfff8000 0 0 0 817= -1.5 818 819 820Input: 1.6 821 822strtoQ consumes 3 bytes and returns 33 823with bits = #3fff9999 99999999 99999999 9999999a 824printf("%.35Lg") gives 1.6000000000000000000000000000000001 825g_Qfmt(0) gives 3 bytes: "1.6" 826 827strtoIQ returns 33, consuming 3 bytes. 828fI[0] = #3fff9999 99999999 99999999 99999999 829= 1.5999999999999999999999999999999999 830fI[1] = #3fff9999 99999999 99999999 9999999a 831= 1.6000000000000000000000000000000001 832fI[1] == strtod 833 834 835Input: -1.6 836 837strtoQ consumes 4 bytes and returns 41 838with bits = #bfff9999 99999999 99999999 9999999a 839printf("%.35Lg") gives -1.6000000000000000000000000000000001 840g_Qfmt(0) gives 4 bytes: "-1.6" 841 842strtoIQ returns 41, consuming 4 bytes. 843fI[0] = #bfff9999 99999999 99999999 9999999a 844= -1.6000000000000000000000000000000001 845fI[1] = #bfff9999 99999999 99999999 99999999 846= -1.5999999999999999999999999999999999 847fI[0] == strtod 848 849 850Input: 1.7 851 852strtoQ consumes 3 bytes and returns 17 853with bits = #3fffb333 33333333 33333333 33333333 854printf("%.35Lg") gives 1.7 855g_Qfmt(0) gives 3 bytes: "1.7" 856 857strtoIQ returns 17, consuming 3 bytes. 858fI[0] = #3fffb333 33333333 33333333 33333333 859= 1.7 860fI[1] = #3fffb333 33333333 33333333 33333334 861= 1.7000000000000000000000000000000002 862fI[0] == strtod 863 864 865Input: -1.7 866 867strtoQ consumes 4 bytes and returns 25 868with bits = #bfffb333 33333333 33333333 33333333 869printf("%.35Lg") gives -1.7 870g_Qfmt(0) gives 4 bytes: "-1.7" 871 872strtoIQ returns 25, consuming 4 bytes. 873fI[0] = #bfffb333 33333333 33333333 33333334 874= -1.7000000000000000000000000000000002 875fI[1] = #bfffb333 33333333 33333333 33333333 876= -1.7 877fI[1] == strtod 878 879 880Input: 1.8 881 882strtoQ consumes 3 bytes and returns 33 883with bits = #3fffcccc cccccccc cccccccc cccccccd 884printf("%.35Lg") gives 1.8 885g_Qfmt(0) gives 3 bytes: "1.8" 886 887strtoIQ returns 33, consuming 3 bytes. 888fI[0] = #3fffcccc cccccccc cccccccc cccccccc 889= 1.7999999999999999999999999999999998 890fI[1] = #3fffcccc cccccccc cccccccc cccccccd 891= 1.8 892fI[1] == strtod 893 894 895Input: -1.8 896 897strtoQ consumes 4 bytes and returns 41 898with bits = #bfffcccc cccccccc cccccccc cccccccd 899printf("%.35Lg") gives -1.8 900g_Qfmt(0) gives 4 bytes: "-1.8" 901 902strtoIQ returns 41, consuming 4 bytes. 903fI[0] = #bfffcccc cccccccc cccccccc cccccccd 904= -1.8 905fI[1] = #bfffcccc cccccccc cccccccc cccccccc 906= -1.7999999999999999999999999999999998 907fI[0] == strtod 908 909 910Input: 1.9 911 912strtoQ consumes 3 bytes and returns 17 913with bits = #3fffe666 66666666 66666666 66666666 914printf("%.35Lg") gives 1.8999999999999999999999999999999999 915g_Qfmt(0) gives 3 bytes: "1.9" 916 917strtoIQ returns 17, consuming 3 bytes. 918fI[0] = #3fffe666 66666666 66666666 66666666 919= 1.8999999999999999999999999999999999 920fI[1] = #3fffe666 66666666 66666666 66666667 921= 1.9000000000000000000000000000000001 922fI[0] == strtod 923 924 925Input: -1.9 926 927strtoQ consumes 4 bytes and returns 25 928with bits = #bfffe666 66666666 66666666 66666666 929printf("%.35Lg") gives -1.8999999999999999999999999999999999 930g_Qfmt(0) gives 4 bytes: "-1.9" 931 932strtoIQ returns 25, consuming 4 bytes. 933fI[0] = #bfffe666 66666666 66666666 66666667 934= -1.9000000000000000000000000000000001 935fI[1] = #bfffe666 66666666 66666666 66666666 936= -1.8999999999999999999999999999999999 937fI[1] == strtod 938 939Rounding mode for strtor... changed from 1 (nearest) to 2 (toward +Infinity) 940 941Input: 1.1 942 943strtoQ consumes 3 bytes and returns 33 944with bits = #3fff1999 99999999 99999999 9999999a 945printf("%.35Lg") gives 1.1000000000000000000000000000000001 946g_Qfmt(0) gives 3 bytes: "1.1" 947 948strtoIQ returns 33, consuming 3 bytes. 949fI[0] = #3fff1999 99999999 99999999 99999999 950= 1.0999999999999999999999999999999999 951fI[1] = #3fff1999 99999999 99999999 9999999a 952= 1.1000000000000000000000000000000001 953fI[1] == strtod 954 955 956Input: -1.1 957 958strtoQ consumes 4 bytes and returns 25 959with bits = #bfff1999 99999999 99999999 99999999 960printf("%.35Lg") gives -1.0999999999999999999999999999999999 961g_Qfmt(0) gives 37 bytes: "-1.0999999999999999999999999999999999" 962 963strtoIQ returns 41, consuming 4 bytes. 964fI[0] = #bfff1999 99999999 99999999 9999999a 965= -1.1000000000000000000000000000000001 966fI[1] = #bfff1999 99999999 99999999 99999999 967= -1.0999999999999999999999999999999999 968fI[1] == strtod 969 970 971Input: 1.2 972 973strtoQ consumes 3 bytes and returns 33 974with bits = #3fff3333 33333333 33333333 33333334 975printf("%.35Lg") gives 1.2000000000000000000000000000000002 976g_Qfmt(0) gives 36 bytes: "1.2000000000000000000000000000000002" 977 978strtoIQ returns 17, consuming 3 bytes. 979fI[0] = #3fff3333 33333333 33333333 33333333 980= 1.2 981fI[1] = #3fff3333 33333333 33333333 33333334 982= 1.2000000000000000000000000000000002 983fI[1] == strtod 984 985 986Input: -1.2 987 988strtoQ consumes 4 bytes and returns 25 989with bits = #bfff3333 33333333 33333333 33333333 990printf("%.35Lg") gives -1.2 991g_Qfmt(0) gives 4 bytes: "-1.2" 992 993strtoIQ returns 25, consuming 4 bytes. 994fI[0] = #bfff3333 33333333 33333333 33333334 995= -1.2000000000000000000000000000000002 996fI[1] = #bfff3333 33333333 33333333 33333333 997= -1.2 998fI[1] == strtod 999 1000 1001Input: 1.3 1002 1003strtoQ consumes 3 bytes and returns 33 1004with bits = #3fff4ccc cccccccc cccccccc cccccccd 1005printf("%.35Lg") gives 1.3 1006g_Qfmt(0) gives 3 bytes: "1.3" 1007 1008strtoIQ returns 33, consuming 3 bytes. 1009fI[0] = #3fff4ccc cccccccc cccccccc cccccccc 1010= 1.2999999999999999999999999999999998 1011fI[1] = #3fff4ccc cccccccc cccccccc cccccccd 1012= 1.3 1013fI[1] == strtod 1014 1015 1016Input: -1.3 1017 1018strtoQ consumes 4 bytes and returns 25 1019with bits = #bfff4ccc cccccccc cccccccc cccccccc 1020printf("%.35Lg") gives -1.2999999999999999999999999999999998 1021g_Qfmt(0) gives 37 bytes: "-1.2999999999999999999999999999999998" 1022 1023strtoIQ returns 41, consuming 4 bytes. 1024fI[0] = #bfff4ccc cccccccc cccccccc cccccccd 1025= -1.3 1026fI[1] = #bfff4ccc cccccccc cccccccc cccccccc 1027= -1.2999999999999999999999999999999998 1028fI[1] == strtod 1029 1030 1031Input: 1.4 1032 1033strtoQ consumes 3 bytes and returns 33 1034with bits = #3fff6666 66666666 66666666 66666667 1035printf("%.35Lg") gives 1.4000000000000000000000000000000001 1036g_Qfmt(0) gives 36 bytes: "1.4000000000000000000000000000000001" 1037 1038strtoIQ returns 17, consuming 3 bytes. 1039fI[0] = #3fff6666 66666666 66666666 66666666 1040= 1.3999999999999999999999999999999999 1041fI[1] = #3fff6666 66666666 66666666 66666667 1042= 1.4000000000000000000000000000000001 1043fI[1] == strtod 1044 1045 1046Input: -1.4 1047 1048strtoQ consumes 4 bytes and returns 25 1049with bits = #bfff6666 66666666 66666666 66666666 1050printf("%.35Lg") gives -1.3999999999999999999999999999999999 1051g_Qfmt(0) gives 4 bytes: "-1.4" 1052 1053strtoIQ returns 25, consuming 4 bytes. 1054fI[0] = #bfff6666 66666666 66666666 66666667 1055= -1.4000000000000000000000000000000001 1056fI[1] = #bfff6666 66666666 66666666 66666666 1057= -1.3999999999999999999999999999999999 1058fI[1] == strtod 1059 1060 1061Input: 1.5 1062 1063strtoQ consumes 3 bytes and returns 1 1064with bits = #3fff8000 0 0 0 1065printf("%.35Lg") gives 1.5 1066g_Qfmt(0) gives 3 bytes: "1.5" 1067 1068strtoIQ returns 1, consuming 3 bytes. 1069fI[0] == fI[1] = #3fff8000 0 0 0 1070= 1.5 1071 1072 1073Input: -1.5 1074 1075strtoQ consumes 4 bytes and returns 9 1076with bits = #bfff8000 0 0 0 1077printf("%.35Lg") gives -1.5 1078g_Qfmt(0) gives 4 bytes: "-1.5" 1079 1080strtoIQ returns 9, consuming 4 bytes. 1081fI[0] == fI[1] = #bfff8000 0 0 0 1082= -1.5 1083 1084 1085Input: 1.6 1086 1087strtoQ consumes 3 bytes and returns 33 1088with bits = #3fff9999 99999999 99999999 9999999a 1089printf("%.35Lg") gives 1.6000000000000000000000000000000001 1090g_Qfmt(0) gives 3 bytes: "1.6" 1091 1092strtoIQ returns 33, consuming 3 bytes. 1093fI[0] = #3fff9999 99999999 99999999 99999999 1094= 1.5999999999999999999999999999999999 1095fI[1] = #3fff9999 99999999 99999999 9999999a 1096= 1.6000000000000000000000000000000001 1097fI[1] == strtod 1098 1099 1100Input: -1.6 1101 1102strtoQ consumes 4 bytes and returns 25 1103with bits = #bfff9999 99999999 99999999 99999999 1104printf("%.35Lg") gives -1.5999999999999999999999999999999999 1105g_Qfmt(0) gives 37 bytes: "-1.5999999999999999999999999999999999" 1106 1107strtoIQ returns 41, consuming 4 bytes. 1108fI[0] = #bfff9999 99999999 99999999 9999999a 1109= -1.6000000000000000000000000000000001 1110fI[1] = #bfff9999 99999999 99999999 99999999 1111= -1.5999999999999999999999999999999999 1112fI[1] == strtod 1113 1114 1115Input: 1.7 1116 1117strtoQ consumes 3 bytes and returns 33 1118with bits = #3fffb333 33333333 33333333 33333334 1119printf("%.35Lg") gives 1.7000000000000000000000000000000002 1120g_Qfmt(0) gives 36 bytes: "1.7000000000000000000000000000000002" 1121 1122strtoIQ returns 17, consuming 3 bytes. 1123fI[0] = #3fffb333 33333333 33333333 33333333 1124= 1.7 1125fI[1] = #3fffb333 33333333 33333333 33333334 1126= 1.7000000000000000000000000000000002 1127fI[1] == strtod 1128 1129 1130Input: -1.7 1131 1132strtoQ consumes 4 bytes and returns 25 1133with bits = #bfffb333 33333333 33333333 33333333 1134printf("%.35Lg") gives -1.7 1135g_Qfmt(0) gives 4 bytes: "-1.7" 1136 1137strtoIQ returns 25, consuming 4 bytes. 1138fI[0] = #bfffb333 33333333 33333333 33333334 1139= -1.7000000000000000000000000000000002 1140fI[1] = #bfffb333 33333333 33333333 33333333 1141= -1.7 1142fI[1] == strtod 1143 1144 1145Input: 1.8 1146 1147strtoQ consumes 3 bytes and returns 33 1148with bits = #3fffcccc cccccccc cccccccc cccccccd 1149printf("%.35Lg") gives 1.8 1150g_Qfmt(0) gives 3 bytes: "1.8" 1151 1152strtoIQ returns 33, consuming 3 bytes. 1153fI[0] = #3fffcccc cccccccc cccccccc cccccccc 1154= 1.7999999999999999999999999999999998 1155fI[1] = #3fffcccc cccccccc cccccccc cccccccd 1156= 1.8 1157fI[1] == strtod 1158 1159 1160Input: -1.8 1161 1162strtoQ consumes 4 bytes and returns 25 1163with bits = #bfffcccc cccccccc cccccccc cccccccc 1164printf("%.35Lg") gives -1.7999999999999999999999999999999998 1165g_Qfmt(0) gives 37 bytes: "-1.7999999999999999999999999999999998" 1166 1167strtoIQ returns 41, consuming 4 bytes. 1168fI[0] = #bfffcccc cccccccc cccccccc cccccccd 1169= -1.8 1170fI[1] = #bfffcccc cccccccc cccccccc cccccccc 1171= -1.7999999999999999999999999999999998 1172fI[1] == strtod 1173 1174 1175Input: 1.9 1176 1177strtoQ consumes 3 bytes and returns 33 1178with bits = #3fffe666 66666666 66666666 66666667 1179printf("%.35Lg") gives 1.9000000000000000000000000000000001 1180g_Qfmt(0) gives 36 bytes: "1.9000000000000000000000000000000001" 1181 1182strtoIQ returns 17, consuming 3 bytes. 1183fI[0] = #3fffe666 66666666 66666666 66666666 1184= 1.8999999999999999999999999999999999 1185fI[1] = #3fffe666 66666666 66666666 66666667 1186= 1.9000000000000000000000000000000001 1187fI[1] == strtod 1188 1189 1190Input: -1.9 1191 1192strtoQ consumes 4 bytes and returns 25 1193with bits = #bfffe666 66666666 66666666 66666666 1194printf("%.35Lg") gives -1.8999999999999999999999999999999999 1195g_Qfmt(0) gives 4 bytes: "-1.9" 1196 1197strtoIQ returns 25, consuming 4 bytes. 1198fI[0] = #bfffe666 66666666 66666666 66666667 1199= -1.9000000000000000000000000000000001 1200fI[1] = #bfffe666 66666666 66666666 66666666 1201= -1.8999999999999999999999999999999999 1202fI[1] == strtod 1203 1204Rounding mode for strtor... changed from 2 (toward +Infinity) to 3 (toward -Infinity) 1205 1206Input: 1.1 1207 1208strtoQ consumes 3 bytes and returns 17 1209with bits = #3fff1999 99999999 99999999 99999999 1210printf("%.35Lg") gives 1.0999999999999999999999999999999999 1211g_Qfmt(0) gives 36 bytes: "1.0999999999999999999999999999999999" 1212 1213strtoIQ returns 33, consuming 3 bytes. 1214fI[0] = #3fff1999 99999999 99999999 99999999 1215= 1.0999999999999999999999999999999999 1216fI[1] = #3fff1999 99999999 99999999 9999999a 1217= 1.1000000000000000000000000000000001 1218fI[0] == strtod 1219 1220 1221Input: -1.1 1222 1223strtoQ consumes 4 bytes and returns 41 1224with bits = #bfff1999 99999999 99999999 9999999a 1225printf("%.35Lg") gives -1.1000000000000000000000000000000001 1226g_Qfmt(0) gives 4 bytes: "-1.1" 1227 1228strtoIQ returns 41, consuming 4 bytes. 1229fI[0] = #bfff1999 99999999 99999999 9999999a 1230= -1.1000000000000000000000000000000001 1231fI[1] = #bfff1999 99999999 99999999 99999999 1232= -1.0999999999999999999999999999999999 1233fI[0] == strtod 1234 1235 1236Input: 1.2 1237 1238strtoQ consumes 3 bytes and returns 17 1239with bits = #3fff3333 33333333 33333333 33333333 1240printf("%.35Lg") gives 1.2 1241g_Qfmt(0) gives 3 bytes: "1.2" 1242 1243strtoIQ returns 17, consuming 3 bytes. 1244fI[0] = #3fff3333 33333333 33333333 33333333 1245= 1.2 1246fI[1] = #3fff3333 33333333 33333333 33333334 1247= 1.2000000000000000000000000000000002 1248fI[0] == strtod 1249 1250 1251Input: -1.2 1252 1253strtoQ consumes 4 bytes and returns 41 1254with bits = #bfff3333 33333333 33333333 33333334 1255printf("%.35Lg") gives -1.2000000000000000000000000000000002 1256g_Qfmt(0) gives 37 bytes: "-1.2000000000000000000000000000000002" 1257 1258strtoIQ returns 25, consuming 4 bytes. 1259fI[0] = #bfff3333 33333333 33333333 33333334 1260= -1.2000000000000000000000000000000002 1261fI[1] = #bfff3333 33333333 33333333 33333333 1262= -1.2 1263fI[0] == strtod 1264 1265 1266Input: 1.3 1267 1268strtoQ consumes 3 bytes and returns 17 1269with bits = #3fff4ccc cccccccc cccccccc cccccccc 1270printf("%.35Lg") gives 1.2999999999999999999999999999999998 1271g_Qfmt(0) gives 36 bytes: "1.2999999999999999999999999999999998" 1272 1273strtoIQ returns 33, consuming 3 bytes. 1274fI[0] = #3fff4ccc cccccccc cccccccc cccccccc 1275= 1.2999999999999999999999999999999998 1276fI[1] = #3fff4ccc cccccccc cccccccc cccccccd 1277= 1.3 1278fI[0] == strtod 1279 1280 1281Input: -1.3 1282 1283strtoQ consumes 4 bytes and returns 41 1284with bits = #bfff4ccc cccccccc cccccccc cccccccd 1285printf("%.35Lg") gives -1.3 1286g_Qfmt(0) gives 4 bytes: "-1.3" 1287 1288strtoIQ returns 41, consuming 4 bytes. 1289fI[0] = #bfff4ccc cccccccc cccccccc cccccccd 1290= -1.3 1291fI[1] = #bfff4ccc cccccccc cccccccc cccccccc 1292= -1.2999999999999999999999999999999998 1293fI[0] == strtod 1294 1295 1296Input: 1.4 1297 1298strtoQ consumes 3 bytes and returns 17 1299with bits = #3fff6666 66666666 66666666 66666666 1300printf("%.35Lg") gives 1.3999999999999999999999999999999999 1301g_Qfmt(0) gives 3 bytes: "1.4" 1302 1303strtoIQ returns 17, consuming 3 bytes. 1304fI[0] = #3fff6666 66666666 66666666 66666666 1305= 1.3999999999999999999999999999999999 1306fI[1] = #3fff6666 66666666 66666666 66666667 1307= 1.4000000000000000000000000000000001 1308fI[0] == strtod 1309 1310 1311Input: -1.4 1312 1313strtoQ consumes 4 bytes and returns 41 1314with bits = #bfff6666 66666666 66666666 66666667 1315printf("%.35Lg") gives -1.4000000000000000000000000000000001 1316g_Qfmt(0) gives 37 bytes: "-1.4000000000000000000000000000000001" 1317 1318strtoIQ returns 25, consuming 4 bytes. 1319fI[0] = #bfff6666 66666666 66666666 66666667 1320= -1.4000000000000000000000000000000001 1321fI[1] = #bfff6666 66666666 66666666 66666666 1322= -1.3999999999999999999999999999999999 1323fI[0] == strtod 1324 1325 1326Input: 1.5 1327 1328strtoQ consumes 3 bytes and returns 1 1329with bits = #3fff8000 0 0 0 1330printf("%.35Lg") gives 1.5 1331g_Qfmt(0) gives 3 bytes: "1.5" 1332 1333strtoIQ returns 1, consuming 3 bytes. 1334fI[0] == fI[1] = #3fff8000 0 0 0 1335= 1.5 1336 1337 1338Input: -1.5 1339 1340strtoQ consumes 4 bytes and returns 9 1341with bits = #bfff8000 0 0 0 1342printf("%.35Lg") gives -1.5 1343g_Qfmt(0) gives 4 bytes: "-1.5" 1344 1345strtoIQ returns 9, consuming 4 bytes. 1346fI[0] == fI[1] = #bfff8000 0 0 0 1347= -1.5 1348 1349 1350Input: 1.6 1351 1352strtoQ consumes 3 bytes and returns 17 1353with bits = #3fff9999 99999999 99999999 99999999 1354printf("%.35Lg") gives 1.5999999999999999999999999999999999 1355g_Qfmt(0) gives 36 bytes: "1.5999999999999999999999999999999999" 1356 1357strtoIQ returns 33, consuming 3 bytes. 1358fI[0] = #3fff9999 99999999 99999999 99999999 1359= 1.5999999999999999999999999999999999 1360fI[1] = #3fff9999 99999999 99999999 9999999a 1361= 1.6000000000000000000000000000000001 1362fI[0] == strtod 1363 1364 1365Input: -1.6 1366 1367strtoQ consumes 4 bytes and returns 41 1368with bits = #bfff9999 99999999 99999999 9999999a 1369printf("%.35Lg") gives -1.6000000000000000000000000000000001 1370g_Qfmt(0) gives 4 bytes: "-1.6" 1371 1372strtoIQ returns 41, consuming 4 bytes. 1373fI[0] = #bfff9999 99999999 99999999 9999999a 1374= -1.6000000000000000000000000000000001 1375fI[1] = #bfff9999 99999999 99999999 99999999 1376= -1.5999999999999999999999999999999999 1377fI[0] == strtod 1378 1379 1380Input: 1.7 1381 1382strtoQ consumes 3 bytes and returns 17 1383with bits = #3fffb333 33333333 33333333 33333333 1384printf("%.35Lg") gives 1.7 1385g_Qfmt(0) gives 3 bytes: "1.7" 1386 1387strtoIQ returns 17, consuming 3 bytes. 1388fI[0] = #3fffb333 33333333 33333333 33333333 1389= 1.7 1390fI[1] = #3fffb333 33333333 33333333 33333334 1391= 1.7000000000000000000000000000000002 1392fI[0] == strtod 1393 1394 1395Input: -1.7 1396 1397strtoQ consumes 4 bytes and returns 41 1398with bits = #bfffb333 33333333 33333333 33333334 1399printf("%.35Lg") gives -1.7000000000000000000000000000000002 1400g_Qfmt(0) gives 37 bytes: "-1.7000000000000000000000000000000002" 1401 1402strtoIQ returns 25, consuming 4 bytes. 1403fI[0] = #bfffb333 33333333 33333333 33333334 1404= -1.7000000000000000000000000000000002 1405fI[1] = #bfffb333 33333333 33333333 33333333 1406= -1.7 1407fI[0] == strtod 1408 1409 1410Input: 1.8 1411 1412strtoQ consumes 3 bytes and returns 17 1413with bits = #3fffcccc cccccccc cccccccc cccccccc 1414printf("%.35Lg") gives 1.7999999999999999999999999999999998 1415g_Qfmt(0) gives 36 bytes: "1.7999999999999999999999999999999998" 1416 1417strtoIQ returns 33, consuming 3 bytes. 1418fI[0] = #3fffcccc cccccccc cccccccc cccccccc 1419= 1.7999999999999999999999999999999998 1420fI[1] = #3fffcccc cccccccc cccccccc cccccccd 1421= 1.8 1422fI[0] == strtod 1423 1424 1425Input: -1.8 1426 1427strtoQ consumes 4 bytes and returns 41 1428with bits = #bfffcccc cccccccc cccccccc cccccccd 1429printf("%.35Lg") gives -1.8 1430g_Qfmt(0) gives 4 bytes: "-1.8" 1431 1432strtoIQ returns 41, consuming 4 bytes. 1433fI[0] = #bfffcccc cccccccc cccccccc cccccccd 1434= -1.8 1435fI[1] = #bfffcccc cccccccc cccccccc cccccccc 1436= -1.7999999999999999999999999999999998 1437fI[0] == strtod 1438 1439 1440Input: 1.9 1441 1442strtoQ consumes 3 bytes and returns 17 1443with bits = #3fffe666 66666666 66666666 66666666 1444printf("%.35Lg") gives 1.8999999999999999999999999999999999 1445g_Qfmt(0) gives 3 bytes: "1.9" 1446 1447strtoIQ returns 17, consuming 3 bytes. 1448fI[0] = #3fffe666 66666666 66666666 66666666 1449= 1.8999999999999999999999999999999999 1450fI[1] = #3fffe666 66666666 66666666 66666667 1451= 1.9000000000000000000000000000000001 1452fI[0] == strtod 1453 1454 1455Input: -1.9 1456 1457strtoQ consumes 4 bytes and returns 41 1458with bits = #bfffe666 66666666 66666666 66666667 1459printf("%.35Lg") gives -1.9000000000000000000000000000000001 1460g_Qfmt(0) gives 37 bytes: "-1.9000000000000000000000000000000001" 1461 1462strtoIQ returns 25, consuming 4 bytes. 1463fI[0] = #bfffe666 66666666 66666666 66666667 1464= -1.9000000000000000000000000000000001 1465fI[1] = #bfffe666 66666666 66666666 66666666 1466= -1.8999999999999999999999999999999999 1467fI[0] == strtod 1468 1469