在pascal上,怎么样把'8':=8?

来源:百度知道 编辑:UC知道 时间:2024/06/25 00:09:04
简单点说,就是把字符等值代换成数字

使用ord函数既可,例子如下:

var c:char; i:integer;

begin
c:='8';
i:=ord(c)-ord('0');
writeln(i);
end.

楼上的只能用字符,即只能是0到9的数才能转换
一般用val过程转换
val([你要转换的字符串],[转换后存放的变量],[判断是否出错的变量])
(最后那个变量通常没用)
如:
val('8',num,p);
执行后
num=8;p=0;

2楼正解
我把其他的基础字符串处理都打上来吧,分给2楼好了:
length(s);函数,字符串长
copy(s,pos,len);函数,取字符串s从pos位开始len长度的字符串
pos(s,st);函数,查找st子串在字符串s中的位置,若不存在则返回值为0
val(s,num,c);过程,将字符串s转换为整形num,若字符串中含不合法字符则将第一个出现非法字符的位置交给c,否则c为0
str(num,s);过程,将整形num转换为字符串型s
delete(s,pos,len);过程,删除s从pos位开始长度为len的子串
insert(s,st,pos);过程,在字符串s中pos位插入子串st
这几个是基本的字符串处理函数过程,要参加竞赛的话务必背出啊

var
c:char;
i:integer;
begin
c:='8';
i:=ord(c)-ord('0');
write(i);
readln;
end.

pascal里面专门有一个过程降字符(串)转化为等价函数:
val(st,i,code);//把字符串st转化为整型或实型i,若出错则在第code位出错(不出错时code=0)
program example;
var i,code:integer;st:string