system函数,WIFEXITED和WEXITSTATUS

system函数,WIFEXITED和WEXITSTATUS1,在程序中,用exit来设置进程的退出值时,虽然该函数的参数类型为int型,但再父进程中只能取到其值的低8位.所以用exit返回值时,高于255的值是没有意义的.2,对于system函数,返回值是由两部分组成的,低8位值表示所执行的脚本在执行过程中所接收到的信号值,其余的位表示的脚本exit退出时所设置的值,即脚本内exit退出是的值的低8位,在system返回值的低9-1

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

1,在程序中,用exit来设置进程的退出值时,虽然该函数的参数类型为int型,但再父进程中只能取到其值的低8位.所以用exit返回值时,高于255的值是没有意义的.

2,对于system函数,返回值是由两部分组成的,低8位值表示所执行的脚本在执行过程中所接收到的信号值,其余的位表示的脚本exit退出时所设置的值,

即脚本内exit退出是的值的低8位,在system返回值的低9-16位.

原文:http://zhangwenxin82.blog.163.com/blog/static/1145959562010323103241387/

包含文件
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
先写一个被调用的函数
==================================
#include <iostream>
int main()
{

printf(“Return 10.\n”);
return 10;
}
==================================
编译后生成一个”rt”的可执行文件
运行结果
==================================
Return 10.
==================================
再写一个调用system的程序
==================================
#include <stdio.h>;
#include <stdlib.h>;
#include <sys/wait.h>;
#include <sys/types.h>;

int main()
{

pid_t status ;

int errno = 0 ;
status = system(“./rt”) ;

printf(“wifexited(status):%d\n”,WIFEXITED(status));
printf(“WEXITSTATUS(status):%d\n”,WEXITSTATUS(status));
if (status == -1)
printf(“system error!”) ;

if (WIFEXITED(status)){

printf(“cp exit normal![%d]\n”, errno) ;
printf(“exit staus = [%X]\n”, WEXITSTATUS(status)) ;
}else
printf(“cp exit illegal![%d]\n”, errno) ;
}
~
[tiantao@probe sys_test]$ cat sys_test.cpp
#include <stdio.h>;
#include <stdlib.h>;
#include <sys/wait.h>;
#include <sys/types.h>;

int main()
{

pid_t status ;

int errno = 0 ;
status = system(“./rt”) ;

printf(“wifexited(status):%d\n”,WIFEXITED(status));
printf(“WEXITSTATUS(status):%d\n”,WEXITSTATUS(status));
if (status == -1)
printf(“system error!”) ;

if (WIFEXITED(status)){

printf(“cp exit normal![%d]\n”, errno) ;
printf(“exit staus = [%X]\n”, WEXITSTATUS(status)) ;
}else
printf(“cp exit illegal![%d]\n”, errno) ;
}

==================================
编译后运行结果
==================================
Return 10.
wifexited(status):1
WEXITSTATUS(status):10
cp exit normal![0]
exit staus = [A]
==================================
可以看到:
WEXITSTATUS(status)可以得到调用程序的返回值。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/227268.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • PHPmyadmin安装教程+遇到问题「建议收藏」

    PHPmyadmin安装教程+遇到问题「建议收藏」安装PHPMyAdmin遇到些问题,我的PHP版本是5.6的。开始安装了5.0的phpMyAdmin,报错了。,之后将phpMyAdmin减低到4.4.12版本,成功安装。安装过程遇到个问题【注意】localhost/phpmyadmin,这个访问的时候,localhost后面要加:端口号,不然无法访问一、下载PHPmyadmin打开PHP中文网中的PHPmyadmi…

  • 浅谈 AnalyticDB SQL 优化「建议收藏」

    浅谈 AnalyticDB SQL 优化「建议收藏」数据库性能优化需要从多个方面进行综合考虑。例如系统资源是否充足、资源模型的设计(高性能vs大存储)、表的设计以及规划、SQL改写和优化等等,本文只要介绍ADBsql的优化。

  • document.getElementById 用法

    document.getElementById 用法 document.getElementById使用   注意:document.getElementById(“”)得到的是一个对象,用alert显示得到的是“object”,而不是具体的值,它有value和length等属性,加上.value得到的才是具体的值! 参考资料:1.docum

  • 使用 HTML、CSS 和 JS 的简单倒数计时器[通俗易懂]

    使用 HTML、CSS 和 JS 的简单倒数计时器[通俗易懂]JavaScript倒数计时器用于各种电子商务和建设中的网站,以使用户保持最新状态。我们在不同类型的电子商务网站上看到,在任何产品或优惠到达之前的某个时间开始倒计时。在本文中,我使用简单的JavaScript代码创建了一个倒数计时器和你分享。您可以观看它的现场演示以了解它是如何工作的。如果您知道如何创建数字时钟,那么创建这样的项目就会容易得多。您可以在此处提前安排特定日期或时间。然后,在JavaScript代码的帮助下,从那个时间减去当前时间,减法每秒减少一次。正如您在上图中所看到的,我在这

  • modelsim-win64-10.4-se 破解(win7实验成功)(其他操作系统也可参考,大同小异)

    modelsim-win64-10.4-se 破解(win7实验成功)(其他操作系统也可参考,大同小异)下载好的文件如下图,包括安装文件以及破解文件:1、运行modelsim-win64-10.4-se.exe,安装软件;     注意事项:安装路径可自行设置,但不要出现汉字。本例安装路径为:D:\modeltech64_10.4\win642、将解压的破解文件(MentorKG.exe和patch_dll.bat)复制到安装目录下的win64文件夹中。3、进入安装目录下的win64 文件夹…

  • keypad(键盘矩阵)指南

    keypad(键盘矩阵)指南目录keyPad简介API说明示例常见问题相关资料以及开发板购买链接keyPad简介Air724UG支持6X6键盘矩阵,可以在luat二次开发的方式应用,但注意AT版本不支持键盘功能。API说明API接口描述powerKey.setup(longPrd,longCb,shortCb)开机键功能配置常用api_1介绍常用api_2介绍示例1.创建一个tKeypad表,储存所有按键值(16个键盘元素+1个开关机键元素)–每个元素的索引为行列值拼接而成的字符

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号