Support binary and octal floating-point

For consistency, support binary and octal floating-point, and accept
a "0d" or "0t" prefix for decimal floating-point.  However, we do not
accept a binary exponent (p) for a decimal mantissa, or vice versa.
diff --git a/stdscan.c b/stdscan.c
index dda4e0a..8295054 100644
--- a/stdscan.c
+++ b/stdscan.c
@@ -141,7 +141,7 @@
 		}
 	    } else if (c == 'H' || c == 'h' || c == 'X' || c == 'x') {
 		is_hex = true;
-	    } else if (is_hex && (c == 'P' || c == 'p')) {
+	    } else if (c == 'P' || c == 'p') {
 		is_float = true;
 		if (*stdscan_bufptr == '+' || *stdscan_bufptr == '-')
 		    stdscan_bufptr++;