跳转至

Visual Basic 语法结构

原文: https://zetcode.com/lang/visualbasic/lexis/

像人类语言一样,计算机语言也具有词汇结构。 Visual Basic 程序的源代码由令牌组成。 令牌是原子代码元素。 在 Visual Basic 中,我们具有注释,变量,字面值,运算符,定界符和关键字。

Visual Basic 程序由 Unicode 字符集中的字符组成。

注释

注释被人类用来阐明源代码。 Visual Basic 中的所有注释都使用'字符或Rem关键字。

Option Strict On

' This is comments.vb 
' Author: Jan Bodnar
' ZetCode 2010

Module Example

    Rem program starts here
    Sub Main()

        Console.WriteLine("This is comments.vb")

    End Sub

End Module

Visual Basic 编译器将忽略注释。

空白

Visual Basic 中的空白用于分隔源文件中的标记。 它用于提高源代码的可读性。

在某些地方需要空格。 例如,在Dim关键字和变量名之间。 在其他地方,这是禁止的。 它不能出现在变量标识符或语言关键字中。

a=1
b = 2
c  =  3

标记之间放置的空间量与 Visual Basic 编译器无关。

行继续符

如果一条语句跨越多行,则必须使用行继续符。 这与基于 C 和 C 的语言不同。

Console.WriteLine("The length of the first string is " _
    + str1.Length.ToString() + " characters")

主要是出于可读性原因,我们不想一行中包含太多字符。 我们打破界限,继续下一行。 在 Visual Basic 中,我们必须使用行继续符,否则编译将失败。

变量

变量是一个标识符,它保存一个值。 在编程中,我们说我们为变量分配了一个值。 从技术上讲,变量是对存储值的计算机内存的引用。 变量名称可以包含字母数字字符和下划线。 标识符可以以字符或下划线开头。 它可能不能以数字开头。 变量名称不区分大小写。 这意味着NamenameNAME引用相同的变量。 变量名称也不能与语言关键字匹配。

Dim name23 As String
Dim _col As Integer
Dim birth_date As Date

这些是有效的 Visual Basic 标识符。

Option Strict On

Module Example

    Sub Main()

        Dim name As String = "Robert"
        Dim Name As String = "Julia"

        Console.WriteLine(name)
        Console.WriteLine(Name)

    End Sub

End Module

由于标识符不区分大小写,因此无法编译此代码。

字面值

字面值是类型的特定值的字面值表示。 字面值类型包括布尔值,整数,浮点数,字符串,字符和日期。 从技术上讲,字面值将在编译时分配一个值,而变量将在运行时分配。

Dim age As Byte = 29
Dim nationality As String = "Hungarian"

在这里,我们为变量分配了两个字面值。 数字 29 和字符串"Hungarian"是字面值。

Option Strict On

Module Example

    Sub Main()

        Dim sng As Boolean = True
        Dim name As String = "James"
        Dim job As String = Nothing
        Dim age As Byte = 23
        Dim weight As Single = 68.5
        Dim born As DateTime = DateValue("November 12, 1987")

        Console.WriteLine("His name is {0}", name)

        If sng Then
            Console.WriteLine("He is single")
        Else 
            Console.WriteLine("He is in a relationship")
        End If

        Console.WriteLine("His job is {0}", job)
        Console.WriteLine("He weighs {0} kilograms", weight)
        Console.WriteLine("He was born in {0}", _
             Format(born, "yyyy"))

    End Sub

End Module

在上面的示例中,我们还有其他字面值。 布尔字面值可以具有TrueFalse值。 James是字符串字面值。 Nothing代表任何数据类型的默认值。 23是一个整数字面值。 68.5是浮点字面值。 最后,November 12, 1987是日期字面值。

$ ./literals.exe 
His name is James
He is single
His job is 
He weighs 68.5 kilograms
He was born in 1987

这是程序的输出。

运算符

运算符是用于对某个值执行操作的符号。

+    -    *    /    \    ^     &
=    +=   -=   *=   /=   \=    ^=
<    >    &=  >>=   <<=   >=   <= 
>>   <>   << 

这些是 Visual Basic 运算符。 我们将在本教程的后面部分讨论运算符。

分隔符

分隔符是一个或多个字符的序列,用于指定纯文本或其他数据流中单独的独立区域之间的边界。

(   )   {   }   !   #   ,   .   :   :=   ?

这些是 Visual Basic 分隔符。

Dim language As String = "Visual Basic"

双精度字符用于标记字符串的开头和结尾。

Console.WriteLine("Today is {0}", GetToday)

括号(方括号)用于标记方法签名。 签名由方法参数组成。 圆括号用于表示求值值。

Dim array() As Integer = { _
    2, 4, 5, 6, 7, 3, 2 }

大括号也用于创建数组。

关键词

关键字是 Visual Basic 语言中的保留字。 关键字用于在计算机程序中执行特定任务。 例如,打印值,执行重复性任务或执行逻辑操作。 程序员不能将关键字用作普通变量。

Visual Basic 具有丰富的关键字。 其中许多内容将在本教程中进行解释。 关键字包括IfElseDimForDateDoubleOrExit等。

Option Strict On

Module Example

    Sub Main()

        Dim i As Integer

        For i = 0 To 35 Step 5
            Console.WriteLine(i)
        Next

    End Sub
End Module

在上面的示例中,我们使用以下关键字:OptionOnModuleSubDimAsIntegerForToStepNextEnd是 Visual Basic 关键字。

在 Visual Basic 教程的这一部分中,我们介绍了 Visual Basic 语言的基本词汇。



回到顶部