v語言初體驗

最近github上開源了一個"新語言"vlang,火的不得了,我不信,因而乎,嘗試了一下,真香。git

如下內存均來自 https://www.v-lang.cn v語言文檔 by 20190701github

ubuntu安裝vlang

 

依賴安裝

這裏採用的是ubuntu的機器,centos的會報錯,暫時沒有去操做golang

查看機器型號

$ uname -a
Linux liwang 4.15.0-54-generic #58-Ubuntu SMP Mon Jun 24 10:55:24 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
$

安裝必要依賴 gcc 和 make

$ sudo apt install gcc make -y
$

下載編譯安裝v

$ git clone https://github.com/vlang/v
$ cd v/
$ make
$ sudo ln -s ~/v/v /usr/local/bin/

測試

$ v
V 0.1.10
Use Ctrl-D or `exit` to exit
For now you have to use println() to print values, this will be fixed soon

>>> print ('hello world')
hello world
>>> $
$

 

Hello world

代碼

$ cat hello.v
fn main() {
        /*
        * 注意: v 語言中 字符串不容許 使用雙引號,至少在 v1.0版本不行
        */
        println('Hello World')
}
$

 

編譯運行

編譯.v文件

$ v hello.v
$ ./hello && rm -f hello
Hello World
$

編譯運行

直接使用 v run file.v 能夠編譯而且運行二進制文件ubuntu

$ v run hello.v
============ running hello ============
Hello World
$

函數

語法/案例

函數和golang相似 語法centos

fn 函數名稱 (形參) 返回值 {
函數體
}

例子數組

$ cat func1.v

fn v_add(x,y int) int {
        z := x + y
        return z
}

fn main() {
        a := 1
        b := 2

        c := v_add(a,b)
        println(c)
}
$

編譯運行

$ v run func1.v
============ running func1 ============
3
$

數組

數組基本用法

代碼函數

$ cat arrays.v
fn main() {
        // 定義數組
        test_array := [1,2,3]

        // 打印數組
        println(test_array)

        // 輸出數組長度
        println(test_array.len)

        // 判斷數組是否包含 1
        println(test_array.contains(1))

        // 判斷數組是否包含 4
        println(test_array.contains(4))
}
$

編譯執行測試

$ v run arrays.v
============ running arrays ============
[1, 2, 3]
3
true
false
$

可變數組

默認數組定義好以後,是不能修改其長度的,而在其前面加上關鍵字 mut ,則能夠實現變長數組,例如this

代碼spa

$ cat arrays_1.v
fn main() {
        // 定義可變數組
        mut other_arrays := [1,2,3]

        // 打印數組長度
        println('數組變化前長度')
        println(other_arrays.len)

        // 打印數組內容
        println('數組內容')
        println(other_arrays)

        // 追加數組值
        other_arrays << 4

        // 打印數組長度
        println('數組追加後長度')
        println(other_arrays.len)

        // 打印數組內容
        println('數組內容')
        println(other_arrays)

}
$

 

編譯運行

ps: 目前的方法我只找到了追加,還未找到刪除,[尷尬--]

$ v run arrays_1.v
============ running arrays_1 ============
數組變化前長度
3
數組內容
[1, 2, 3]
數組追加後長度
4
數組內容
[1, 2, 3, 4]
$

 

未完待續。。。

相關文章
相關標籤/搜索