socket 编程,如何知道程序异常退出的原因?
int portnum = 0;
cfd = socket(AF_INET, SOCK_STREAM, 0);
if(-1 == cfd)
{
printf("socket fail ! \r\n");
return -1;
}
printf("socket ok !\r\n");
bzero(&s_add,sizeof(struct sockaddr_in));
s_add.sin_family=AF_INET;
inet_pton(AF_INET, "", &s_add.sin_addr);
s_add.sin_port=htons(portnum);
if(-1 == connect(cfd,(struct sockaddr *)(&s_add), sizeof(struct sockaddr)))
{
printf("connect fail !\r\n");
return -1;
}
70 clientaddr.sin_addr.s_addr = inet_addr("");
71 clientaddr.sin_port = htons(0);
72
73 if( connect(cli_sock, (struct sockaddr *)&clientaddr, sizeof(sockaddr_in)) < 0 )
74 {
75 perror("connect");
76 return -1;
77 }
78
connect: Network is unreachable
startclieprocess failed!