一旦你声明了一个变量,你就可以往里面存储值。这就叫做赋值。

注意,Pascal跟其它一些直接用等号作为赋值符号的语言不同,Pascal用冒号后面跟一个等号来表示赋值,这跟大多数计算机代数系统相似。

上面的expression(表达式)既可以是单独一个值:

+ 加法或一元正号 real或integer real或integer

- 减法或一元负号 real或integer real或integer

div和mod只能用于整数。/对实数和整数都可以用,但是结果都是real类型的。其他的运算符都可以同时用于实数和整数。当出现实数和整数的混合运算时,结果都是real类型的,不然结果可能会丢失部分数据。这也是为什么Pascal要分别为普通除法和整数除法使用不同的运算符。每个变量都只能被赋予同一类型的值。因此,你不能把一个real类型的值赋给一个integer类型的变量。然而,某些特定类型的值可以转换为更高的数据类型。最常见的就是把一个integer类型的值赋给一个real类型的变量。假设有下面的变量定义:

some_real中存储的值将会是375.0

把一种数据类型变为另外一种数据类型涉及到类型转换。现代Pascal编译器支持类似于C语言的显示类型转换,但语法稍微有些不同。不过类型转换通常用于低级别的操作或是面对对象编程,所以初学者不太需要用到。

在Pascal语言中,减号可以用作负号,同样地加号也可以用作正号,但由于正号是默认的,所以一般不用写。

你可能感觉直接这样乘以-2比较好,但是Pascal编译器就会搞不清楚到底该乘还是该减。你可以用圆括号来避免这种问题:

计算机里的运算顺序和优先级跟数学中一样。乘法和除法(* / div mod)运算先于加法和减法(+ -),而括号总是最优先的。所以3.5*(2+3)的结果是17.5.。

Pascal中不能对布尔类型的值做标准算术运算。布尔类型自己有一套特殊的运算。同样,你也不能对字符类型做算术运算。