v語言初體驗


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

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

ubuntu安裝vlang

 

依賴安裝

這里采用的是ubuntu的機器,centos的會報錯,暫時沒有去操作

查看機器型號

$ 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 可以編譯並且運行二進制文件

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

函數

語法/案例

函數和golang類似 語法

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 ,則可以實現變長數組,例如

代碼

$ 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]
$

 

未完待續。。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM