2020-12-25

操作系统实验:进程间通信之有名管道

first.c:


#include"stdio.h"
#include"unistd.h"
#include"stdlib.h"
#include"sys/stat.h"
#include"fcntl.h"
int main()
{
 int fd;
 fd=open("./myfifo",O_WRONLY);
 if(fd<0)
 {
  printf("open failure\n");
  return -1;
 }
 printf("open success\n");
 char c[10];
 scanf("%s",c);
 write(fd,c,sizeof(c));
 return 0;
}

second.c:

#include"stdio.h"
#include"string.h"
#include"unistd.h"
#include"stdlib.h"
#include"sys/stat.h"
#include"fcntl.h"
int main()
{
 int fd;
 fd=open("./myfifo",O_RDONLY);
 if(fd<0)
 {
  printf("open failure\n");
  return -1;
 }
 printf("open success\n");
 char a[10];
 read(fd,a,1000);
 int n=strlen(a);
 int i=0;
 for(i=n-1;i>=0;i--)
  printf("%c",a[i]);
 return 0;
}

myfifo.c:

#include"stdio.h"
#include"unistd.h"
#include"stdlib.h"
#include"sys/stat.h"
#include"fcntl.h"
int main()
{
 int ret;
 ret=mkfifo("./myfifo",0777);
 if(ret<0)
 {
  printf("create failure\n");
  return -1;
 }
 printf("create success\n");
 return 0;
}

在这里插入图片描述在这里插入图片描述在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
func (c *cAsset) CreatComponent(r *ghttp.Request) { var req *v1.CreateComponentReq if err := r.Parse(&req); err != nil { r.Response.WriteJson(g.Map{ "code": 1, "msg": err.Error(), }) } createRequest := &creativecomponent.CreateRequest{ AdvertiserID: req.AdvertiserID, } res, err := service.Asset().Create(createRequest) if err != nil { r.Response.WriteJson(g.Map{ "code": 2, "msg": err.Error(), }) } r.Response.WriteJson(res) }这段代码creativecomponent.CreateRequest的过滤条件为type CreateRequest struct { // AdvertiserID 广告主ID AdvertiserID uint64 `json:"advertiser_id,omitempty"` // ComponentInfo 组件信息 ComponentInfo *ComponentInfo `json:"component_info,omitempty"` },其ComponentInfo为type ComponentInfo struct { // ComponentID 组件ID ComponentID model.Uint64 `json:"component_id,omitempty"` // ComponentType 组件类型 ComponentType enum.ComponentType `json:"component_type,omitempty"` // ComponentName 组件名称。长度小于等于20。一个文长度为2 ComponentName string `json:"component_name,omitempty"` // ComponentData 组件详细信息。不同的component_type对应的值不同,具体的结构见创建或更新接口定义 ComponentData ComponentData `json:"component_data,omitempty"` // CreateTime 创建时间。格式"2020-12-25 15:12:08" CreateTime string `json:"create_time,omitempty"` // Status 组件审核状态。 Status enum.ComponentStatus `json:"status,omitempty"` }想要把ComponentInfo作为参放到createRequest,该怎么做?请详一点
07-20

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值