1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

builtin: use 0 instead of \0 rune when setting C style terminators; use C.memcpy in []string{}.join("")

This commit is contained in:
Delyan Angelov
2021-04-13 11:29:33 +03:00
parent 1b924fcf41
commit a1121d0eb0
4 changed files with 25 additions and 30 deletions

View File

@@ -30,7 +30,7 @@ pub fn (nn int) str1() string {
buf[max - len - 1] = `-`
len++
}
buf[max] = `\0`
buf[max] = 0
return tos(buf + max - len, len)
}
*/
@@ -77,7 +77,7 @@ fn (nn int) str_l(max int) string {
}
mut index := max
unsafe {
buf[index--] = `\0`
buf[index--] = 0
}
for n > 0 {
n1 := int(n / 100)
@@ -143,7 +143,7 @@ pub fn (nn u32) str() string {
mut buf := unsafe { malloc(max + 1) }
mut index := max
unsafe {
buf[index--] = `\0`
buf[index--] = 0
}
for n > 0 {
n1 := n / u32(100)
@@ -189,7 +189,7 @@ pub fn (nn i64) str() string {
}
mut index := max
unsafe {
buf[index--] = `\0`
buf[index--] = 0
}
for n > 0 {
n1 := n / i64(100)
@@ -231,7 +231,7 @@ pub fn (nn u64) str() string {
mut buf := vcalloc(max + 1)
mut index := max
unsafe {
buf[index--] = `\0`
buf[index--] = 0
}
for n > 0 {
n1 := n / 100
@@ -279,7 +279,7 @@ pub fn (n int) hex1() string {
fn u64_to_hex(nn u64, len byte) string {
mut n := nn
mut buf := [256]byte{}
buf[len] = `\0`
buf[len] = 0
mut i := 0
for i = len - 1; i >= 0; i-- {
d := byte(n & 0xF)
@@ -295,7 +295,7 @@ fn u64_to_hex(nn u64, len byte) string {
fn u64_to_hex_no_leading_zeros(nn u64, len byte) string {
mut n := nn
mut buf := [256]byte{}
buf[len] = `\0`
buf[len] = 0
mut i := 0
for i = len - 1; i >= 0; i-- {
d := byte(n & 0xF)
@@ -452,7 +452,7 @@ pub fn (b byte) ascii_str() string {
}
unsafe {
str.str[0] = b
str.str[1] = `\0`
str.str[1] = 0
}
// println(str)
return str