免费注册 查看新帖 |

Chinaunix

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

[系统安装] linux下打开fifo出错 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-05-12 09:59 |只看该作者 |倒序浏览
本帖最后由 chenyx 于 2012-05-13 08:54 编辑

#include<unistd.h>
#include<stdlib.h>
#include<stdio.h>
#include<string.h>
#include<fcntl.h>
#include<sys/types.h>
#include<sys/stat.h>

#define FIFO_NAME "/tmp/my_fifo"

int main(int argc,char *argv[])
{
        int res;
        int open_mode=0;
        int i;
       
        if(argc<2)
        {
                fprintf(stderr,"usage:%s < some combination of O_RDONLY O_WRONLY O_NONBLOCK>\n",*argv);
                exit(EXIT_FAILURE);
        }
        for(i=1;i<argc;i++)
        {
                if(strncmp(*++argv,"O_RDONLY",8)==0)
                        open_mode |=O_RDONLY;
                if(strncmp(*++argv,"O_WRONLY",8)==0)
                        open_mode |=O_WRONLY;
                if(strncmp(*++argv,"O_NONBLOCK",10)==0)
                        open_mode |=O_NONBLOCK;
        }
        printf("%d\n",open_mode);
        if(access(FIFO_NAME,F_OK)==-1)
        {
                res=mkfifo(FIFO_NAME,0777);
                if(res!=0)
                {
                        fprintf(stderr,"could not cresat fifo %s\n",FIFO_NAME);
                        exit(EXIT_FAILURE);
                       
                }
               
        }
        printf("process %d opening FIFO\n",getpid());
        res=open(FIFO_NAME,open_mode);
        printf("process %d result %d\n",getpid(),res);
        sleep(5);
        if(res!=-1)
        {
                close(res);
        }
        printf("process %d finished\n",getpid());
        exit(EXIT_SUCCESS);
}


程序如上为什么我编译后,执行  

[root@localhost li]# gcc fifo2.c
[root@localhost li]# ./a.out O_RDONLY
段错误


这是什么原因啊?


那两个表情  我明明写的是 8 啊













论坛徽章:
0
2 [报告]
发表于 2012-05-12 10:27 |只看该作者
问题解决了,就是*++argv惹的祸,换成argv【i】就正确了。

刚来论坛,连自己的帖子都找不到啊。
怎么找到自己的帖子,怎么删帖啊?

论坛徽章:
4
CU大牛徽章
日期:2013-03-13 15:29:07CU大牛徽章
日期:2013-03-13 15:29:49CU大牛徽章
日期:2013-03-13 15:30:192015年迎新春徽章
日期:2015-03-04 09:57:09
3 [报告]
发表于 2012-05-12 21:53 |只看该作者
你不能删帖,只有版主才可以。

论坛徽章:
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
4 [报告]
发表于 2012-05-13 08:56 |只看该作者
那个8变表情的问题,楼主发帖的时候,右面有个禁用表情的,选上,就不会变成表情了

论坛徽章:
0
5 [报告]
发表于 2012-05-13 10:57 |只看该作者
回复 3# dooros


    哦 谢谢

论坛徽章:
0
6 [报告]
发表于 2012-05-13 10:58 |只看该作者
回复 4# chenyx


    多谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP