Lines Matching refs:precision
154 int tfl, flags, width, precision; in vfprintf() local
181 precision = va_arg(args, int); in vfprintf()
185 precision = 0; in vfprintf()
186 while('0'<=*s && *s<='9') precision = precision*10 + *s++ - '0'; in vfprintf()
190 precision = -1; in vfprintf()
199 if(ocvt[*s]) nprint += (*ocvt[*s++])(f, &args, flags, width, precision); in vfprintf()
209 ocvt_c(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_c() argument
211 #pragma ref precision in ocvt_c()
221 ocvt_s(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_s() argument
230 if(precision >= 0) in ocvt_s()
231 for(i=0; i!=precision && s[i]; i++); in ocvt_s()
239 if(precision >= 0){ in ocvt_s()
240 for(i=0; i!=precision && *s; i++){ in ocvt_s()
260 ocvt_n(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_n() argument
264 #pragma ref precision in ocvt_n()
287 ocvt_fixed(FILE *f, va_list *args, int flags, int width, int precision, in ocvt_fixed() argument
326 if(precision==0 && dp-digits==1 && dp[-1]=='0') in ocvt_fixed()
328 nlzero = precision-(dp-digits); in ocvt_fixed()
339 if(flags&ZPAD && precision <= 0){ in ocvt_fixed()
377 ocvt_X(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_X() argument
379 return ocvt_fixed(f, args, flags, width, precision, 16, 0, "0123456789ABCDEF", "0X"); in ocvt_X()
383 ocvt_d(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_d() argument
385 return ocvt_fixed(f, args, flags, width, precision, 10, 1, "0123456789", ""); in ocvt_d()
389 ocvt_o(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_o() argument
391 return ocvt_fixed(f, args, flags, width, precision, 8, 0, "01234567", "0"); in ocvt_o()
395 ocvt_p(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_p() argument
397 return ocvt_fixed(f, args, flags|PTR|ALT, width, precision, 16, 0, in ocvt_p()
402 ocvt_u(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_u() argument
404 return ocvt_fixed(f, args, flags, width, precision, 10, 0, "0123456789", ""); in ocvt_u()
408 ocvt_x(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_x() argument
410 return ocvt_fixed(f, args, flags, width, precision, 16, 0, "0123456789abcdef", "0x"); in ocvt_x()
416 ocvt_E(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_E() argument
418 return ocvt_flt(f, args, flags, width, precision, 'E'); in ocvt_E()
422 ocvt_G(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_G() argument
424 return ocvt_flt(f, args, flags, width, precision, 'G'); in ocvt_G()
428 ocvt_e(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_e() argument
430 return ocvt_flt(f, args, flags, width, precision, 'e'); in ocvt_e()
434 ocvt_f(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_f() argument
436 return ocvt_flt(f, args, flags, width, precision, 'f'); in ocvt_f()
440 ocvt_g(FILE *f, va_list *args, int flags, int width, int precision) in ocvt_g() argument
442 return ocvt_flt(f, args, flags, width, precision, 'g'); in ocvt_g()
446 ocvt_flt(FILE *f, va_list *args, int flags, int width, int precision, char afmt) in ocvt_flt() argument
463 if(precision < 0) precision = 6; in ocvt_flt()
466 digits = _dtoa(d, 3, precision, &exponent, &sign, &edigits); in ocvt_flt()
473 digits = _dtoa(d, 2, 1+precision, &exponent, &sign, &edigits); in ocvt_flt()
479 if (precision > 0) in ocvt_flt()
480 digits = _dtoa(d, 2, precision, &exponent, &sign, &edigits); in ocvt_flt()
482 digits = _dtoa(d, 0, precision, &exponent, &sign, &edigits); in ocvt_flt()
483 precision = edigits - digits; in ocvt_flt()
484 if (exponent > precision && exponent <= precision + 4) in ocvt_flt()
485 precision = exponent; in ocvt_flt()
487 if(exponent >= -3 && exponent <= precision){ in ocvt_flt()
489 precision -= exponent; in ocvt_flt()
492 --precision; in ocvt_flt()
498 precision = 0; in ocvt_flt()
509 if(precision+exponent > ndig) { in ocvt_flt()
510 precision = ndig - exponent; in ocvt_flt()
511 if(precision < 0) in ocvt_flt()
512 precision = 0; in ocvt_flt()
516 if(precision > ndig-1) precision = ndig-1; in ocvt_flt()
519 nout = precision; /* digits after decimal point */ in ocvt_flt()
520 if(precision!=0 || flags&ALT) nout++; /* decimal point */ in ocvt_flt()
547 if(precision>0 || flags&ALT) putc('.', f); in ocvt_flt()
548 for(i=0; i!=precision; i++) in ocvt_flt()
553 if(precision>0 || flags&ALT) putc('.', f); in ocvt_flt()
554 for(i=0; i!=precision; i++) putc(i<ndig-1?digits[i+1]:'0', f); in ocvt_flt()