交叉编译client程序出错,望高手赐教!

发布于 2022-09-29 23:11:17 字数 4962 浏览 8 评论 0

程序如下:#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <netdb.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <sys/socket.h>
//#include <sys/wait.h>
#include <unistd.h>
                                                                                             
#define PORT 3490
#define MAXDATASIZE 100  
                                                                     
int main(int argc, char *argv[])
{
int sockfd;
int numbytes;
char buf[MAXDATASIZE];
struct hostent *he;
struct sockaddr_in their_addr;
                          
if (argc!=2)
   {
    fprintf(stderr,"usage:client hostname\n";
    exit(1);
   }
if ((he=gethostbyname(argv[1])) ==NULL)
   {
   perror("gethostbyname";
   exit(1);
   }                                                                                                  
if((sockfd=socket(AF_INET,SOCK_STREAM,0))== -1)
  {
  perror("socket";
  exit(1);
  }
their_addr.sin_family =AF_INET;
their_addr.sin_port  =htons(PORT);
their_addr.sin_addr  =*((struct in_addr*)he->h_addr);
bzero(&(their_addr.sin_zero),;

if(connect(sockfd,(struct sockaddr *)&their_addr,sizeof(struct sockaddr))== -1)
   {
    perror("connect";
    exit(1);
   }
if((numbytes=recv(sockfd,buf,MAXDATASIZE,0)== -1)
   {
     perror("recv";
     exit(1);
   }
  buf[numbytes] ='\0';
  printf("recevied:%s",buf);
  close(sockfd);
  return 0;  
}
产生错误如下:[root@localhost boot]# arm-linux-gcc  -o client client.c
client.c: In function `main':
client.c:49: error: parse error before '{' token
client.c: At top level:
client.c:53: error: `numbytes' undeclared here (not in a function)
client.c:53: warning: data definition has no type or storage class
client.c:54: error: parse error before string constant
client.c:54: error: conflicting types for 'printf'
client.c:54: note: a parameter list with an ellipsis can't match an empty parameter name list declaration
client.c:54: error: conflicting types for 'printf'
client.c:54: note: a parameter list with an ellipsis can't match an empty parameter name list declaration
client.c:54: warning: data definition has no type or storage class
client.c:55: warning: parameter names (without types) in function declaration
client.c:55: warning: data definition has no type or storage class
client.c:56: error: parse error before "return"
client.c:53: error: storage size of `buf' isn't known

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

圈圈圆圆圈圈 2022-10-06 23:11:17

错误不是写的很清楚吗?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文