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

system与excel族函数区别

1.system

#include<stdlib.h>
int system(const char *command);

comand是命令的路径,一般我们用绝对路径 

system函数会创建新的进程,新的进程执行完返回原来的进程,原来的进程则继续执行后面的代码段。

如我们创建一个sys.cpp文件,在其中去执行另一个sys1可执行文件

#include<iostream>
#include<unistd.h>
#include<stdlib.h>
int main()
{std::cout<<"sys excute"<<getpid()<<std::endl;system("./sys1");std::cout<<"sys success"<<std::endl;return 0;
}

 同目录下创建一个sys1.cpp文件,然后将其编译链接为可执行文件

#include<iostream>
#include<unistd.h>
int main()
{std::cout<<"sys1 excute"<<getpid()<<std::endl;std::cout<<"sys1 termined"<<std::endl;return 0;
}

可以看出先执行完sys1后又返回原来的进程执行了

2.execl

#include <unistd.h>int execl(const char *path, const char *arg, ...);
int execlp(const char *file, const char *arg, ...);
int execle(const char *path, const char *arg,..., char * const envp[]);
int execv(const char *path, char *const argv[]);
int execvp(const char *file, char *const argv[]);
int execvpe(const char *file, char *const argv[],char *const envp[]);

一般来说,path为指令的路径,arg为指令的参数 

excel不创建新的进程,只是从原来进程去执行别的任务,执行完不会返回。

#include<iostream>
#include<unistd.h>
#include<stdlib.h>
int main()
{std::cout<<"sys excute"<<getpid()<<std::endl;execl("./sys1","sys1",0);std::cout<<"sys success"<<std::endl;return 0;
}

可以看到执行完sys1,就结束了

http://www.lryc.cn/news/374381.html

相关文章:

  • STM32存储左右互搏 模拟U盘桥接SPI总线FATS读写FLASH W25QXX
  • jrt从量变到质变
  • NLP主流大模型如GPT3/chatGPT/T5/PaLM/LLaMA/GLM的原理和差异有哪些-详细解读
  • 从MySQL到NoSQL:分析传统关系型数据库与NoSQL数据库的协同
  • 三、树和割集
  • 泛型中<>和()中的类型
  • spark mllib 特征学习笔记 (一)
  • SQLite 日期 时间
  • 飞书API 2-1:如何通过 API 创建文件夹?
  • 【APP移动端自动化测试】第一节.环境配置和adb调试工具
  • Kotlin 协程:从基础概念到开发实践
  • IPNV6
  • C++并发之锁(std::lock_guard,std::unique_lock)
  • FreeRTOS队列(queue)
  • Azure数据分析Power BI
  • 将 Python3 程序打包成 APK 并运行在 ARM 的 Android 系统中
  • 学习记录:VS2019+OpenCV3.4.1实现SURF库函数的调用
  • JVM-基础知识
  • 保密工作应党而生、伴党而行、为党而兴
  • docker login 报错: http: server gave HTTP response to HTTPS client
  • 「C系列」C 文件读写
  • 编程中的cos:深度解析与应用探索
  • 计算机毕业设计hadoop+spark+hive知识图谱酒店推荐系统 酒店数据分析可视化大屏 酒店爬虫 高德地图API 酒店预测系统 大数据毕业设计
  • 简单谈谈云服务器私网IP的存在意义及优势
  • python错题(2)
  • 禁止methtype联网
  • 【iOS】UI学习——cell的复用及自定义cell
  • 【详细介绍下PostgreSQL】
  • 基于Matlab停车场车牌识别计时计费管理系统 【W2】
  • 码住!详解时序数据库不同分类与性能对比