pascal中read和readln的区别
答案:3 悬赏:20 手机版
解决时间 2021-11-11 05:54
- 提问者网友:精神病院里
- 2021-11-10 15:16
pascal中read和readln的区别
最佳答案
- 五星知识达人网友:不想翻身的咸鱼
- 2021-11-10 15:59
read和readln的区别在于readln读取到回车符为止,举个例子,输入数据有2行:
1 2 3 4
5 6 7 8
然后声明var a,b:integer;
当使用read时:
read(a); //a=1
read(b); //b=2
当使用readln时:
readln(a); //a=1
readln(b); //b=5
可以看出,在readln(a)一句时,系统读取了整行“1 2 3 4”,然后根据a是一个integer型变量,于是只截取了第一个数1,而执行readln(b)时,由于第一行已经读取过了,所以从第二行开始读取。虽然这个时候readln(b)和read(b)的作用是一样的,可以替换成read(b),但是过程不一样readln(b)读取了整行“5 6 7 8”,而read(b)只读取到第一个空格即“5 ”,也就是说,如果再读取一个integer变量,read(b)的情况下可以读取到6,而readln(b)则会发生无法读取的错误。
1 2 3 4
5 6 7 8
然后声明var a,b:integer;
当使用read时:
read(a); //a=1
read(b); //b=2
当使用readln时:
readln(a); //a=1
readln(b); //b=5
可以看出,在readln(a)一句时,系统读取了整行“1 2 3 4”,然后根据a是一个integer型变量,于是只截取了第一个数1,而执行readln(b)时,由于第一行已经读取过了,所以从第二行开始读取。虽然这个时候readln(b)和read(b)的作用是一样的,可以替换成read(b),但是过程不一样readln(b)读取了整行“5 6 7 8”,而read(b)只读取到第一个空格即“5 ”,也就是说,如果再读取一个integer变量,read(b)的情况下可以读取到6,而readln(b)则会发生无法读取的错误。
全部回答
- 1楼网友:杯酒困英雄
- 2021-11-10 18:02
没有区别,只是有一点点不同
- 2楼网友:往事隔山水
- 2021-11-10 17:13
read 读一行的内容,但到了换行符就停止
readln 读一行内容,并且连同换行符一起读取
注:
1.换行符ascii码为10
2.windows平台下,换行往往是 回车+换行,ascii码为 13+10
readln 读一行内容,并且连同换行符一起读取
注:
1.换行符ascii码为10
2.windows平台下,换行往往是 回车+换行,ascii码为 13+10
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯