#if 0 #endif 这段代码什么意思啊??
int ACE_TMAIN(int,ACE_TCHAR* []){
ACE_INET_Addr port("5000");
ACE_SOCK_Acceptor acceptor;
if(acceptor.open(port,1)==-1)
ACE_ERROR_RETURN((LM_ERROR,ACE_TEXT("%p\n"),ACE_TEXT("acceptor.open")),100);
while(1)
{
ACE_SOCK_Stream peer;
ACE_INET_Addr peer_addr;
ACE_Time_Value timeout(30,0);
#if 0
if(acceptor.accept(peer)==-1)
ACE_ERROR_TRTURN((LM_ERROR,ACE_TEXT("(%P|%t) failed to accept "),ACE_TEXT("client connection\n")),100);
#endif //if 0 此处是什么意思啊。何时才是0的情况啊?
if(acceptor.accept(peer,&peer_addr,&timeout,0)==-1)
{
if(ACE_OS::last_error()==EINTR)
ACE_DEBUG((LM_DEBUG,ACE_TEXT("(%P|%t) interrupted while "),ACE_TEXT("waiting for connection\n")));
else
if(ACE_OS::last_error()==ETIMEDOUT)
ACE_DEBUG((LM_DEBUG,ACE_TEXT("(%P|%t) timeout while"),ACE_TEXT("waiting for conncection\n")));
}
else
{
ACE_TCHAR peer_name;
peer_addr.addr_to_string(peer_name,200);
ACE_DEBUG((LM_DEBUG,ACE_TEXT("(%P|%t ) connection from %s\n"),peer_name));
char buf;
ssize_t bytes_received;
while((bytes_received=peer.recv(buf,sizeof(buf)))!=-1)
{
peer.send_n(buf,bytes_received);
}
peer.close();
}
}
} 兄弟,基础不牢靠哦。
那是不编译的宏定义。 #if 0
...
#endif
相当于把中间的内容注释掉了,就是没有。 注释掉而不删掉,就是为了其他人能了解这个代码的修改历史。
你也可以用
#if 1 //
...
#endif
来增加一段代码。 那段代码不参与编译!
页:
[1]