帮看看这段代码什么意思?(30分)

  • 主题发起人 主题发起人 tswhoney
  • 开始时间 开始时间
T

tswhoney

Unregistered / Unconfirmed
GUEST, unregistred user!
function socket_readline(sockfd:integer):string;
var
s:string;
buf:array[0..1] of char;
n:cardinal;
begin
buf[0]:=#0;
buf[1]:=#0;
s:='';
n:=recv(sockfd,buf,1,0);
while n>0 do
begin
buf[1]:=#0;
s:=s+buf;
if (buf[0]=#10) then
break;
n:=recv(sockfd,buf,1,0);
end;
result:=trim(s);
end;
我想是将字符写到缓冲区,但为何才有两个字符的位置,够放吗?
特别是这两句:
buf[0]:=#0;
buf[1]:=#0;
 
recv中第三个参数就是你指定的缓冲的大小呀
buf[];=#0; 清空缓冲。
 
那buf[0],buf[1]是不是指的缓冲区1,缓冲区2?
 
缓冲区的第一个字符和第二个字符
 
多人接受答案了。
 
后退
顶部