pascal中read和readln的区别
来源:百度知道 编辑:UC知道 时间:2024/05/25 08:23:54
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)则会发生无法读取的错误。
read 读一行的内容,但到了换行符就停止
readln 读一行内容,并且连同换行符一起读取
注:
1.换行符ascii码为10
2.windows平台下,换行往往是 回车+换行,ascii码为 13+10
没有区别,只是有一点点不同