首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

这个程序究竟是什么有关问题啊

2012-04-11 
这个程序究竟是什么问题啊?如题,这是一个Delphi控制台程序program Project1{$APPTYPE CONSOLE}usesSysUti

这个程序究竟是什么问题啊?
如题,这是一个Delphi控制台程序

program Project1;

{$APPTYPE CONSOLE}

uses
  SysUtils,
  zmqmm in '..\pub_sub\sub_client\zmqmm.pas';

var
  context:pointer;
  frontend:pointer;
  backend:pointer;
  zmq_poll:smallint=1;
  items:array[0..1] of zmq_pollitem_t;
  item:zmq_pollitem_tp;


  msg:zmq_msg_t;
  msgp:zmq_msg_tp;

begin
 msgp:=@msg;
 context:=zmq_init(1);
 frontend:=zmq_socket(context,6);
 backend:=zmq_socket(context,5);
  
 zmq_bind(frontend,'tcp://*:1038');
 zmq_bind(backend,'tcp//*:1039');
 
  items[0].socket:=frontend;
  items[0].fd:=0;
  items[0].events:=1;
  items[0].revents:=0;
  items[1].socket:=backend;
  items[1].fd:=0;
  items[1].events:=1;
  items[1].revents:=0;

  item:=@items[0];

 while True do
 begin
  zmq_poll(items,2,-1);
  if (items[0].revents<>0) then
  begin
  while True do
  begin
  zmq_msg_init(msgp);
  zmq_recv(frontend,msgp,0);
  zmq_send(backend,msgp,0);
  zmq_msg_close(msgp);
  end;
  end;
  if (items[1].revents<>0) then
  begin
  while True do
  begin
  zmq_msg_init(msgp);
  zmq_recv(backend,msgp,0);
  zmq_send(frontend,msgp,0);
  zmq_msg_close(msgp);
  end;
  end;
  zmq_close(frontend);
  zmq_close(backend);
  zmq_term(context);
 end;

end.



报错是:[Pascal Error] Project1.dpr(40): E2066 Missing operator or semicolon

但是39行是:zmq_poll(items,2,-1);它没有缺操作符,也不差分号啊


[解决办法]
把其它代码删了一点一点试,光写zmq_poll(items,2,-1)这个能过不~

热点排行