一段代码,这里为什么用exit(1)而不是return 1?还有如何解读这种避免String = NULL的方式?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

一段代码,这里为什么用exit(1)而不是return 1?还有如何解读这种避免String = NULL的方式?

2016-03-09 15:59:40 1982 1

学校C语言课的PPT,关于 Command line arguments的,讲的很粗,例题直接看不懂。
直接上图片了,因为有老师的标注,截图比较完整。
我的疑问在于,
1.虚线框内的代码有什么作用,老师说为了避免String = NULL?并不理解。
2.为什么用fprintf并且括号内是stderr?如果没有特殊作用,那我就理解为老师只是为了演示课堂内容了……
3.这里为什么exit()和return混用,各有什么目的?
screenshot

取消 提交回答
全部回答(1)
  • a123456678
    2019-07-17 18:56:21

    return与exit的区别是什么?

    exit()是一个函数
    ,结束一个进程,它将删除进程使用的内存空间,同时把错误信息返回父进程,在父进程中wait系统调用将接受到此返回信息。

    return返回函数值,是关键字

    在main函数中我们通常使用return (0);这样的方式返回一个值。

    但这是限定在非void情况下的也就是void main()这样的形式。

    exit()通常是用在子程序中用来终结程序用的,使用后程序自动结束跳会操作系统。

    但在如果把exit用在main内的时候无论main是否定义成void返回的值都是有效的,并且exit不需要考虑类型,exit(1)等价于return (1)

    exit(0); //正常退出
    非0即是非正常退出
    数字0,1,-1会被写入环境变量ERRORLEVEL,其它程序可以由此判断程序结束状态。
    一般0为正常推出,其它数字为异常,其对应的错误可以自己指定。

    0 0
相关问答

1

回答

Java中的String...和String类型有什么区别吗?

2022-10-14 23:14:48 95浏览量 回答数 1

1

回答

为什么 java 中的 string 不属于基本数据类型?

2022-04-03 20:47:48 1006浏览量 回答数 1

1

回答

java把string类声明的final类不能有类吗?

2022-04-03 20:48:33 877浏览量 回答数 1

1

回答

Java中String字符串的存储原理是啥呀?

2022-04-03 10:09:09 377浏览量 回答数 1

1

回答

java中string类主要作用是什么呢?

2022-04-03 10:09:09 365浏览量 回答数 1

1

回答

Java的string关键字通常用来证明什么内容?

2022-04-03 10:09:09 357浏览量 回答数 1

1

回答

使用Java的string时应该注意什么内容呢?

2022-04-03 10:08:00 340浏览量 回答数 1

1

回答

Java中将String类型分割成数组呢?

2022-04-03 10:12:43 393浏览量 回答数 1

1

回答

如何在Java中的哈希映射中迭代List <Map <String,Object >>动态添加键值对

2020-03-21 11:09:48 824浏览量 回答数 1

1

回答

[@小川游鱼][¥20]为什么 Java 中的 String 是不可变的(Immutable)?

2018-12-13 14:25:22 1526浏览量 回答数 1
+关注
文章
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载