linux error syntax before __32,linux下编译错误问题请教:syntax error before "size_t"

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

我用vi编辑器编程,编译时出现以下问题,请各位高手指教:

[xyf@ips_01 xyf]$ gcc -o xyf_server  xyf_server.c

xyf_server.c:1: syntax error before '

In file included from /usr/include/sys/types.h:266,

from /usr/include/sys/uio.h:24,

from /usr/include/sys/socket.h:27,

from xyf_server.c:2:

/usr/include/bits/pthreadtypes.h:48: syntax error before "size_t"

/usr/include/bits/pthreadtypes.h:51: syntax error before "__stacksize"

In file included from /usr/include/sys/uio.h:29,

from /usr/include/sys/socket.h:27,

from xyf_server.c:2:

/usr/include/bits/uio.h:45: syntax error before "size_t"

In file included from /usr/include/sys/socket.h:35,

from xyf_server.c:2:

/usr/include/bits/socket.h:221: syntax error before "size_t"

/usr/include/bits/socket.h:224: syntax error before "msg_controllen"

/usr/include/bits/socket.h:227: syntax error before '}' token

/usr/include/bits/socket.h:232: syntax error before "size_t"

/usr/include/bits/socket.h:239: syntax error before '}' token

In file included from xyf_server.c:2:

/usr/include/sys/socket.h:136: syntax error before "size_t"

/usr/include/sys/socket.h:143: syntax error before "size_t"

/usr/include/sys/socket.h:150: syntax error before "size_t"

/usr/include/sys/socket.h:161: syntax error before "size_t"

In file included from xyf_server.c:4:

/usr/include/arpa/inet.h:78: syntax error before "size_t"

/usr/include/arpa/inet.h:84: syntax error before "size_t"

/usr/include/arpa/inet.h:90: syntax error before "size_t"

/usr/include/bits/socket.h:237: warning: array `__cmsg_data' assumed to have one element

[xyf@ips_01 xyf]$

程序名为:xyf-server.c

源程序为:

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#define MAX_BUF_SIZE 100

#define  PORT  1600

#define BACKLOG 10

static char buf[MAX_BUF_SIZE];

int main()

{

int sock,sockfd;

struct sockaddr_in sin;

int size;

fd_set set;

FD_ZERO(&set);

sockfd = socket(AF_INET, SOCK_STREAM, 0);

if (sockfd == -1)

{

perror("server socket");

return -1;

}

memset(&sin, 0, sizeof(sin));

sin.sin_family = AF_INET;

sin.sin_addr.s_addr = htonl(INADDR_ANY);

sin.sin_port = htons(PORT);

if (bind(sockfd, (struct sockaddr *)&sin, sizeof(sin)) == -1)

{

perror("server bind");

return -1;

}

listen(sockfd,  BACKLOG );

memset(&sin, 0, sizeof(sin));

size = sizeof(sin);

sock = accept(sockfd, NULL, &size);

if (sock != -1)

{

memset(&sin, 0, sizeof(sin));

size = sizeof(sin);

while(1)

{

FD_SET(sock, &set);

select(sock+1, &set, NULL, NULL, NULL);

size = recv(sock, buf, MAX_BUF_SIZE, 0);

if (size <= 0)

break;

printf("server recv %d bytes", size);

}

}

close(sockfd);

close(sock);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值