浏览代码

remove magic numbers from floatscan

Rich Felker 13 年之前
父节点
当前提交
3ddeedd8f7
共有 1 个文件被更改,包括 5 次插入5 次删除
  1. 5 5
      src/internal/floatscan.c

+ 5 - 5
src/internal/floatscan.c

@@ -403,16 +403,16 @@ long double __floatscan(FILE *f, int c, int prec, int pok)
 
 
 	switch (prec) {
 	switch (prec) {
 	case 0:
 	case 0:
-		bits = 24;
-		emin = -149;
+		bits = FLT_MANT_DIG;
+		emin = FLT_MIN_EXP-bits;
 		break;
 		break;
 	case 1:
 	case 1:
-		bits = 53;
-		emin = -1074;
+		bits = DBL_MANT_DIG;
+		emin = DBL_MIN_EXP-bits;
 		break;
 		break;
 	case 2:
 	case 2:
 		bits = LDBL_MANT_DIG;
 		bits = LDBL_MANT_DIG;
-		emin = -16445;
+		emin = LDBL_MIN_EXP-bits;
 		break;
 		break;
 	default:
 	default:
 		return 0;
 		return 0;