【嵌入式C语言开发】实战第017例 exit()函数_c语言exit源码-程序员宅基地

技术标签: c语言  嵌入式C语言开发  linux  开发语言  

实例说明
尽管exit()函数不是程序控制语句,但是我们还是要向读者对它作简短的介绍。与break语句中止循环相似,标准库函数exit()终止程序的执行。当函数中出现exit()时,该函数会立即结束全部程序,强制返回操作系统。exit()的作用类似于跳出整个程序。

本例是输入月数,程序则打印出1999年的该月有几天。在这个程序中,switch语句是主结构,在swtich的分支选择语句中,用到了exit()函数。


知识要点
exit0函数的一般形式是:
void exit(int return code);
其中返回值return code 将送回调用过程,一般是操作系统。按照惯例0值一般表示正常结束,非0值则表示某种错误exit()函数包含在头文件<stdlib.h>当中

编程实例

# include <stdlib.h>
# include <stdio.h>

void main()
{
    int month;
    int day;
    
    printf("please input the month number: ");
    scanf("%d", &month);
    switch (month)
    {
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12: day=31;
             break;
    case 4:
    case 6:
    case 9:
    case 11: day=30;
             break;
    case 2:  day=28;
             break;
    default: exit(0);
    }
    printf("1999.%d has %d days.\n", month, day);
}

程序分析

由于本实例的主结构是switch循环,而在前面的实例中,已经详细地介绍过switch语句的用法,所以读者应该能够独立分析出本实例的流程。在此,只向大家做简单的介绍。首先输入月数,如果月数是从1~12之间的整数,那么将输出月份所对应的天数。如果不是它们之间的整数,那么将执行语句exit(),直接跳出整个程序。
需要注意的是,如果要在程序中使用函数 exit(),则必须在程序的开头包含头文件<stdlib.h>,否则将不能够调用此函数


点赞+关注。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39804904/article/details/135037964

智能推荐

JS Ireratop迭代器/遍历器_jsir-程序员宅基地

文章浏览阅读418次。JS Iterator迭代器/遍历器_jsir

vue封装echarts数据更新页面数据不渲染问题_vue向echarts组件传值后渲染init 不渲染-程序员宅基地

文章浏览阅读2.2k次。## 解决方案,在子组件监听optionexport default { name: 'CommonEcharts', props: ['option'], data() { return { } }, watch: { option: { handler(newval, oldval) { let chartDom = document.getElementById('main'); let myChart = echarts.init_vue向echarts组件传值后渲染init 不渲染

ADB命令大全_adb点击命令-程序员宅基地

文章浏览阅读9k次,点赞6次,收藏48次。ADB命令大全_adb点击命令

android服务启动失败Unable to start service Intent U=0: not found-程序员宅基地

文章浏览阅读8.5k次,点赞4次,收藏11次。android启动服务失败,提示:Unable to start service Intent { cmp=xxx/.xxx} U=0: not found_unable to start service intent

Windows上安装Redis教程_windows安装redis-程序员宅基地

文章浏览阅读1.8w次,点赞43次,收藏148次。在 Windows 上安装 Redis5.0 教程_windows安装redis

实验五 循环结构程序设计 → 张玉生《C语言程序设计实训教程》双色版 配套实验书答案 (纯手打, 仅供参考)_c语言程序设计张玉生版双色版课后答案-程序员宅基地

文章浏览阅读1.7w次,点赞50次,收藏122次。张玉生《C语言程序设计实训教程》双色版 配套实验书的答案,纯手打,已经在本地编译环境成功运行后再发布,有错的话请在评论区不吝指正。_c语言程序设计张玉生版双色版课后答案

随便推点

ASP 3.0高级编程(十五)-程序员宅基地

文章浏览阅读60次。 来 源: 互联网 作 者: 不祥 发表日期: 2005-12-17 16:47:22 阅读次数: 76 文章标题:ASP → ASP 3.0高级编程(十五) 查看权限: 普通文章 查看方式: 查看:[ 大字 中字 小字 ] [双击滚屏] 正 文: ASP 3..._asp高级编程(15)

1. Helm Template 3分钟将项目部署至k8s_helm tpl-程序员宅基地

文章浏览阅读354次。k8s部署写yaml很烦人?helm template 3分钟帮你把项目打包成Helm Chart并部署至k8s_helm tpl

IOC和AOP概述_aoc iop-程序员宅基地

文章浏览阅读355次。DI(依赖注入):容器知道哪个组件(类)运行的时候,需要注入另一个组件(类);容器通过反射的形式,将容器中准备好的对象注入(利用反射给对象赋值)。只要是容器管理的组件,都能使用容器提供的强大功能。..._aoc iop

Hr自主项目推行笔记-程序员宅基地

文章浏览阅读61次。 已经很久没上iteye博客了,虽然在公司里面用不了,但是至少回家的时候可以用来做总结,比较过几个专业网站的博客,最终还是觉得这里的最适合自己,主要是因为有做电子书的功能。这样后面方便日志的备份。以后要养成每天写日志做总结的习惯了,这里是开始的舞台, 在这里开始记录我冲刺的一年-2012。 今年接了一个私活,是关于以人资管理为核心的小型erp系统。由于领导和我们开发人员都没有独立在外面..._推行笔记

C语言中字符串和字符数组的区别_c语言字符数组和字符串的区别-程序员宅基地

文章浏览阅读3k次,点赞7次,收藏29次。(1)C语言中,没有字符串类型但可以用字符数组模拟字符串。(2)C语言中,字符串是以’\0’作结尾字符。(3)C语言中,字符串常量本质上是一个无名的字符数组_c语言字符数组和字符串的区别

爬取网易云数据并且可视化展示_网易云爬虫数据可视化-程序员宅基地

文章浏览阅读1.8w次,点赞67次,收藏397次。结构化爬取网易云数据并且可视化展示项目说明代码框架第三方库说明内容爬取说明完整代码爬取结果内容可视化项目说明网易云音乐歌单数据获取,获取某一歌曲风格的所有歌单,进入每个歌单获取歌单名称、创建者、播放量、页面链接、收藏数、转发数、评论数、标签、介绍、收录歌曲数、部分收录歌名,并统计播放量前十的歌单,将播放量前十的歌单以及对应的所有信息进行另外存储,对其进行可视化展示。代码框架第三方库说明# bs4'''BS4全称是Beautiful Soup,它提供一些简单的、python式的函数_网易云爬虫数据可视化

推荐文章

热门文章

相关标签