https://www.vlangstudy.com/index.php/2019/07/13/go%e3%80%81deno%e3%80%81v%e9%80%9f%e5%ba%a6%e6%af%94%e6%8b%bc/正常写法以及输出,默认会给int 赋值int32
import time fn main(){ mut a := 0 num := 100000 start := time.ticks() for i:=0; i < num; i++{ a += i } end := time.ticks() println(end) println(start) println(a) } ============ running test ============ 1563106596900 1563106596899 704982704
如果手动设置i64就不会出问题了
import time fn main(){ mut a := i64(0) num := 100000 start := time.ticks() for i:=0; i < num; i++{ a += i } end := time.ticks() println(end) println(start) println(a) } ============ running test ============ 1563106692525 1563106692525 4999950000
以下为计算10亿次耗时2.9秒
import time fn main(){ mut a := i64(0) num := 1000000000 start := time.ticks() for i:=0; i < num; i++{ a += i } end := time.ticks() println(end) println(start) println(end - start) println(a) } ============ running test ============ 1563108092901 1563108089961 2940 499999999500000000
我上次测试3.5秒,怎么到你这儿就2.9秒了,难道用C的time会把V的time module慢0.6s吗。我是在windows下测试的,请问楼主用的什么系统
只不过还是证明一点,v语言更吹的速度相差很远,现在起码还比deno慢了一半,go的10亿次384毫秒就解决了,也是v的8倍速度了。
不科学,我怎么测都是3.5秒,而且用的你程序