免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2749 | 回复: 5
打印 上一主题 下一主题

关于unix网络编程第一卷书中程序的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-06-01 17:03 |只看该作者 |倒序浏览
本帖最后由 ChianXu 于 2011-06-01 17:17 编辑

各位大虾,我用的是centos,
最近学习unix网络编程,书中的例子,无论是哪个,我编译的时候都遇到如下问题:
错误:expected ‘:’, ‘,’, ‘;’, ‘}’ or ‘__attribute__’ before ‘{’ token
这个问题指的是在main()后面的那个“{”,我不明白,为什么会提示少了那些符号呢?
以下是一个程序实例:
#include        "unp.h"
#include        <time.h>

int
main(int argc, char *argv[])
{
        int                        listenfd, connfd;
        struct sockaddr_in        servaddr;
        char                        buff[MAXLINE];
        time_t                        ticks;

        listenfd = Socket(AF_INET, SOCK_STREAM, 0);

        bzero(&servaddr, sizeof(servaddr));
        servaddr.sin_family      = AF_INET;
        servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
        servaddr.sin_port        = htons(13);        /* daytime server */

        Bind(listenfd, (SA *) &servaddr, sizeof(servaddr));

        Listen(listenfd, LISTENQ);

        for ( ; ; ) {
                connfd = Accept(listenfd, (SA *) NULL, NULL);

        ticks = time(NULL);
        snprintf(buff, sizeof(buff), "%.24s\r\n", ctime(&ticks));
        Write(connfd, buff, strlen(buff));

                Close(connfd);
        }
}
gcc -o daytimetcpsrv daytimetcpsrv.c
显示错误:daytimetcpsrc.c:5: 错误:expected ‘:’, ‘,’, ‘;’, ‘}’ or ‘__attribute__’ before ‘{’ token..
求救阿

论坛徽章:
0
2 [报告]
发表于 2011-06-01 17:03 |只看该作者
自己顶下,希望别沉了。

论坛徽章:
381
CU十二周年纪念徽章
日期:2014-01-04 22:46:58CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55CU大牛徽章
日期:2013-04-17 11:17:19CU大牛徽章
日期:2013-04-17 11:17:32CU大牛徽章
日期:2013-04-17 11:17:37CU大牛徽章
日期:2013-04-17 11:17:42CU大牛徽章
日期:2013-04-17 11:17:47CU大牛徽章
日期:2013-04-17 11:17:52CU大牛徽章
日期:2013-04-17 11:17:56
3 [报告]
发表于 2011-06-01 17:13 |只看该作者
我给你移动到内核源码区吧

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
4 [报告]
发表于 2011-06-01 18:22 |只看该作者
回复 1# ChianXu

记得这里面的 Socket,Close 都是基于系统调用 socket、close 封装出来的。
你这里仅仅引用头文件可以吗,你看一下作者的源代码,这些函数以什么形式提供给你,是不是需要连接一些库文件?

论坛徽章:
0
5 [报告]
发表于 2011-06-01 23:54 |只看该作者
那个只是作者一个封装,把判断出错语句都封起来了。
包含在那个头文件了,我查看了。
不懂的是为什么会出现少了那个东西,难道是那个头文件有问题,我编译每个程序都是那样。
后面我就些了一个很简单的程序,顺便把那个头文件加进去,结果还是显示和上面一样的错误,如果去掉那个头文件,则程序编译通过。所以我想应该是上面那个头文件有问题,但是我找不出头文件错在哪?<unp.h>。。。好像就我遇到这个问题。

论坛徽章:
0
6 [报告]
发表于 2011-06-02 09:58 |只看该作者
这个问题基本上可以肯定是《unp.h》文件中的错误。你可以把这个文件的、内容贴上来,帮你分析一下。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP