JSRUN 用代码说话

变量类型

编辑教程

变量类型

程序运行过程中储存单元中的可变的值,所以称之为变量

变量的名称可以由字母,数字和下划线字符组成.它必须以字母或下划线开头. Pascal 不区分大小写,所以大写和小写字母在这里意味着相同.

Pascal中的基本变量

Type 描述
字符 通常是一个八位字节(一个字节).这是一个整数类型.
整数 机器最自然的整数大小.
Real 单精度浮点值.
布尔值 指定true或false逻辑值.这也是一个整数类型.
枚举 指定用户定义的列表.
子范围 表示变量,其值在一个范围内.
字符串 存储一个字符数组.

Pascal编程语言还允许定义各种其他类型的变量,我们将在随后的章节中介绍这些变量,如指针,数组,记录,集合和文件等.对于本章,让我们只研究基本变量类型.

Pascal中的变量声明

所有变量必须在我们在Pascal中使用之前声明程序.所有变量声明后跟 var 关键字.声明指定变量列表,后跟冒号(:)和类型.变量声明的语法是 :

 var 
 variable_list:type;

这里,type必须是有效的Pascal数据类型,包括字符,整数,实数,布尔值或任何用户定义的数据类型等,以及variable_list可以由逗号分隔的一个或多个标识符名称组成.这里显示了一些有效的变量声明 :

var
age, weekdays : integer;
taxrate, net_income: real;
choice, isready: boolean;
initials, grade: char;
name, surname : string;

在上一个教程中,我们已经讨论过Pascal允许声明一个类型.可以通过名称或标识符来标识类型.此类型可用于定义该类型的变量.例如,

type
days, age = integer;
yes, true = boolean;
name, city = string;
fees, expenses = real;

现在,如此定义的类型可用于变量声明 :

var
weekdays, holidays : days;
choice: yes;
student_name, emp_name : name;
capital: city;
cost: expenses;

请注意 type 声明和 var 声明之间的区别.类型声明指示类型的类别或类,例如整数,实数等,而变量规范指示变量可以采用的值的类型.您可以将Pascal中的 type 声明与C中的 typedef 进行比较.最重要的是,变量名称是指将要存储变量值的内存位置.类型声明不是这样.

Pascal中的变量初始化

变量被赋值为冒号和等号,后跟一个恒定的表达.赋值的一般形式是 :

  variable_name:= value;

默认情况下,Pascal中的变量不会初始化为零.它们可能包含垃圾值.因此,在程序中初始化变量是一种更好的做法.变量可以在其声明中初始化(分配初始值).初始化之后是 var 关键字,初始化语法如下 :

 var 
 variable_name:type = value;

一些例子是 :

age: integer = 15;
taxrate: real = 0.5;
grade: char = 'A';
name: string = 'John Smith';

让我们看一个例子,它利用到目前为止所讨论的各种类型的变量;

program Greetings;
const
message = ' Welcome to the world of Pascal ';

type
name = string;
var
firstname, surname: name;

begin
   writeln('Please enter your first name: ');
   readln(firstname);

   writeln('Please enter your surname: ');
   readln(surname);

   writeln;
   writeln(message, ' ', firstname, ' ', surname);
end.
`

编译并执行上述代码时,会产生以下结果 :

Please enter your first name:
John
Please enter your surname:
Smith
Welcome to the world of Pascal John Smith

枚举变量

您已经了解了如何使用整数,实数和布尔值等简单变量类型.现在,让我们看一下枚举类型的变量,可以定义为 :

var
var1, var2, ...  : enum-identifier;

当您声明了枚举类型时,您可以声明该类型的变量.例如,

type
months = (January, February, March, April, May, 
June, July, August, September, October, November, December);
Var
m: months;
...
M := January;

以下示例说明概念 :

program exEnumeration;
type
beverage = (coffee, tea, milk, water, coke, limejuice);

var
drink:beverage;

begin
   writeln('Which drink do you want?');
   drink := limejuice;

   writeln('You can drink ', drink);
end.

编译并执行上述代码时,会产生以下结果 :

Which drink do you want?
You can drink limejuice
Subrange Variables

子范围变量被声明为 :

var
subrange-name : lowerlim ... uperlim;

子范围变量的例子是 :

var
marks: 1 ... 100;
grade: 'A' ... 'E';
age: 1 ... 25;

以下程序说明概念 :

program exSubrange;
var
marks: 1 .. 100;
grade: 'A' .. 'E';

begin
   writeln( 'Enter your marks(1 - 100): ');
   readln(marks);

   writeln( 'Enter your grade(A - E): ');
   readln(grade);

   writeln('Marks: ' , marks, ' Grade: ', grade);
end.

编译并执行上述代码时,会产生以下结果 : ` Enter your marks(1 - 100): 100 Enter your grade(A - E): A Marks: 100 Grade: A

JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。 大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
支付宝
9.99
无法付款,请点击这里
金额: 0
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟