mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-08-08 21:13:39 +00:00
Add print() for 64-bit integers
This commit is contained in:
+20
-4
@@ -7,24 +7,40 @@ func printstring(s string) {
|
||||
}
|
||||
}
|
||||
|
||||
func printuint(n uint) {
|
||||
func printuint32(n uint32) {
|
||||
// TODO: don't recurse, but still be compact (and don't divide/mod
|
||||
// more than necessary).
|
||||
prevdigits := n / 10
|
||||
if prevdigits != 0 {
|
||||
printuint(prevdigits)
|
||||
printuint32(prevdigits)
|
||||
}
|
||||
putchar(byte((n % 10) + '0'))
|
||||
}
|
||||
|
||||
func printint(n int) {
|
||||
func printint32(n int32) {
|
||||
// Print integer in signed big-endian base-10 notation, for humans to
|
||||
// read.
|
||||
if n < 0 {
|
||||
putchar('-')
|
||||
n = -n
|
||||
}
|
||||
printuint(uint(n))
|
||||
printuint32(uint32(n))
|
||||
}
|
||||
|
||||
func printuint64(n uint64) {
|
||||
prevdigits := n / 10
|
||||
if prevdigits != 0 {
|
||||
printuint64(prevdigits)
|
||||
}
|
||||
putchar(byte((n % 10) + '0'))
|
||||
}
|
||||
|
||||
func printint64(n int64) {
|
||||
if n < 0 {
|
||||
putchar('-')
|
||||
n = -n
|
||||
}
|
||||
printuint64(uint64(n))
|
||||
}
|
||||
|
||||
func printbyte(c uint8) {
|
||||
|
||||
Reference in New Issue
Block a user