当前位置: 首页 > wzjs >正文

綦江中国建设银行官网站国家企业信息公开网查询系统

綦江中国建设银行官网站,国家企业信息公开网查询系统,织梦网站改版需要怎么做,网站分页1.将File练习题&#xff0c;内部的FILE*描述符&#xff0c;改成int描述符 2。写一个类Fifo管道类。提高难度&#xff0c;什么都不提示。只要求&#xff1a;使用自己编写的Fifo类对象&#xff0c;实现2个终端之间互相聊天 file.cpp #include <iostream> #include <c…

1.将File练习题,内部的FILE*描述符,改成int描述符

2。写一个类Fifo管道类。提高难度,什么都不提示。只要求:使用自己编写的Fifo类对象,实现2个终端之间互相聊天

file.cpp

#include <iostream>
#include <cstring>
#include <cstdlib>
#include <unistd.h>
#include <sstream>
#include <vector>
#include <memory>
#include <head.h>
using namespace std;class File{
private:int fp;
public:File(){fp=open("./1.txt",O_RDWR);}~File(){close(fp);}void write(string str);void read();
};void File::write(string str){::write(fp,str.data(),str.size());cout<<"写入成功"<<endl;}
void File::read(){char buf[128]={0};lseek(fp,0,SEEK_SET);while(::read(fp,buf,sizeof(buf))>0){cout<<buf<<endl;memset(buf,0,128);}}
int main(int argc,const char** argv){File fp;string str="hello";fp.write(str);fp.read();return 0;
}

fifo1.cpp

#include <iostream>
#include <fstream>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <cstring>
#include <thread>#define FIFO_WRITE "fifo1"
#define FIFO_READ "fifo2"void readFromPipe() {mkfifo(FIFO_READ, 0666); // 创建FIFOint fd = open(FIFO_READ, O_RDONLY);if (fd == -1) {std::cerr << "Error opening " << FIFO_READ << " for reading" << std::endl;return;}char buffer[256];while (true) {memset(buffer, 0, sizeof(buffer));int bytesRead = read(fd, buffer, sizeof(buffer) - 1);if (bytesRead > 0) {buffer[bytesRead] = '\0'; // 确保字符串终止std::cout << "\n[Received]: " << buffer << "\n> ";std::cout.flush();}}close(fd);
}void writeToPipe() {mkfifo(FIFO_WRITE, 0666); // 创建FIFOint fd = open(FIFO_WRITE, O_WRONLY);if (fd == -1) {std::cerr << "Error opening " << FIFO_WRITE << " for writing" << std::endl;return;}std::string message;while (true) {std::cout << "> ";std::getline(std::cin, message);message += '\n'; // 添加换行符,确保 read 读取时能正确解析write(fd, message.c_str(), message.size());}close(fd);
}int main() {std::thread readThread(readFromPipe);std::thread writeThread(writeToPipe);readThread.join();writeThread.join();return 0;
}

fifo2.cpp

#include <iostream>
#include <fstream>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <cstring>
#include <thread>#define FIFO_WRITE "fifo2"
#define FIFO_READ "fifo1"void readFromPipe() {mkfifo(FIFO_READ, 0666);int fd = open(FIFO_READ, O_RDONLY);if (fd == -1) {std::cerr << "Error opening " << FIFO_READ << " for reading" << std::endl;return;}char buffer[256];while (true) {memset(buffer, 0, sizeof(buffer));int bytesRead = read(fd, buffer, sizeof(buffer) - 1);if (bytesRead > 0) {buffer[bytesRead] = '\0'; // 确保字符串终止std::cout << "\n[Received]: " << buffer << "\n> ";std::cout.flush();}}close(fd);
}void writeToPipe() {mkfifo(FIFO_WRITE, 0666);int fd = open(FIFO_WRITE, O_WRONLY);if (fd == -1) {std::cerr << "Error opening " << FIFO_WRITE << " for writing" << std::endl;return;}std::string message;while (true) {std::cout << "> ";std::getline(std::cin, message);message += '\n'; // 添加换行符,确保 read 读取时能正确解析write(fd, message.c_str(), message.size());}close(fd);
}int main() {std::thread readThread(readFromPipe);std::thread writeThread(writeToPipe);readThread.join();writeThread.join();return 0;
}

http://www.dtcms.com/wzjs/578424.html

相关文章:

  • 上海高端建设网站杭州计算机公司排名
  • 团建网站地推
  • 江苏微信网站建设WordPress建站评价
  • 大连网站设计室网站推荐免费的
  • 做网站需要了解哪些知识整站优化费用
  • 北京威凯建设发展招聘网站晋城市新闻
  • 网站内部链接有什么作用设计网名的特殊符号
  • python3做网站教程阜阳做网站哪家好
  • 网站找哪些单位做实名认证短信推广
  • 有没有专门做旅游攻略的网站本地电脑做网站服务器
  • 青岛建设信息网江西短视频搜索seo推荐
  • 做asp网站教程wordpress微信登录界面
  • 微站官网汕头个人网站推广建设
  • 六安市网站建设seo网络运营
  • 建什么类型个人网站网站首页可以做竖版吗
  • 学校网站建设的安全策略wordpress设置金币
  • 做视频网站免费观看爱商标注册号
  • 搭建网站是要什么编程网站ide做的比较好的
  • 广西网站建设费用域名备案查询管理系统
  • 淄博网站制作网络服务潍坊知名网站建设公司
  • 购物网站用模板好不好网站建设 地址 上海石门二路
  • 驾校网站建设关键词如何建视频网站
  • 内蒙古网站seo视频门户网站建设服务器
  • 做国内打不开的网站吗那种投票网站里面怎么做
  • 红旗渠建设集团网站有没有免费的网站软件
  • 网站推广的途径有哪些平顶山市湛河区建设局网站
  • 做电子手环网站需求分析高考评卷工作全面展开
  • 淄博阿雷网站建设公司wordpress装机主题
  • 光明区住房和建设局网站邯郸招聘信息网
  • 网站建设的论文上海 网站建设公司