当前位置:  技术问答>linux和unix

echo $?命令取的是进程结束后的eax的值吗?

    来源: 互联网  发布时间:2017-01-28

    本文导语:  先看一点代码 #include {    printf("hello worldn"); } 执行后该程序后,用echo $?命令吸显示12(即printf的返回值) 那echo $?命令取的是进程结束后的eax的值吗? 如果是,那要是我电脑有几个处理器,然后运行多线程什么的,没个线...


先看一点代码
#include
{
   printf("hello worldn");
}
执行后该程序后,用echo $?命令吸显示12(即printf的返回值)
那echo $?命令取的是进程结束后的eax的值吗?
如果是,那要是我电脑有几个处理器,然后运行多线程什么的,没个线程都同时返回一个值,那这时候echo $?会返回什么呢?

|
$?是当前shell运行的程序获得的程序的返回值. 在C中如果用exit -1的话 $?应该是254 (255-1得到的)

只有当程序退出时 shell 才捕捉返回值. 多线程退出了还是回到父进程而已.并没返回给系统

|
echo $?显示的上一条命令的返回值。这个值是保存在Shell程序的变量里的。楼主记不记得Shell程序是你所运行的程序的父进程?
楼主没有写return XX; 所以printf的返回值就成了程序的返回值,然后“hello worldn”恰好是十二个字符。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • echo $$的问题 ,echo $($test)这个不行
  • echo ’*’与echo *的执行结果有什么区别?为什么?
  • linux里echo $与linux echo $[]有什么区别?
  • echo `echo \\\z` 为什么输出是 \z
  • echo -e 与echo -n的区别,我们老师是不是说错了
  • echo把选项-e输出了?
  • c/c++开源软件 iis7站长之家
  • echo -n不生效
  • 怎样在echo里面实现换行?
  • JavaScript 图像延迟加载库 Echo.js
  • echo 能回显多行内容吗?
  • echo换行回显
  • Makefile中使用echo的问题
  • shell脚本执行echo显示参数问题
  • echo $? 是什么意思?
  • shell里怎样把echo出来的东西放到变量中??
  • 这个echo的是什么意思
  • echo -n abcdef >/dev/memory什么意思??
  • echo $?为什么没有用
  • --------在stty -echo屏蔽回显后,如何重新获得回显?--------


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,