首页
学习
活动
专区
圈层
工具
发布

【C语言】exit函数详解

一、exit函数的定义 exit 函数是 C 标准库中的函数,其原型定义在 stdlib.h 头文件中。exit 函数的作用是终止当前程序的执行,并返回一个指定的退出码给操作系统。...exit(0):正常运行程序并退出程序; exit(1):非正常运行导致退出程序; return():返回函数,若在主函数中,则会退出函数并返回一值 当使用 exit(0)、exit(1) 和 ...2、非正常运行导致退出程序 exit(1) #include int main() { // 程序执行的一些操作... // 程序出现错误并返回退出码 1...0: #include int main() { // 程序执行的一些操作... // 程序正常结束并返回退出码 0 return 0; } 总结 在 C...语言中,return 语句用于从函数中返回一个值,并终止函数的执行。

2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    (C#)Application.Exit()、Environment.Exit(0)区别

    Application.Exit:通知winform消息循环退出。会在所有前台线程退出后,退出应用 强行退出方式,就像 Win32 的 PostQuitMessage()。...它意味着放弃所有消息泵,展开调用堆栈,并将执行返回给系统  方法停止在所有线程上运行的所有消息循环,并关闭应用程序的所有窗口  Environment.Exit:立即终止当前进程,应用程序即强制退出...返回exitcode给操作系统, 相比之下Environment.Exit更狠些  因此我们可以构造以下的restart()函数重新启动应用程序          private static void...ReStart()          {              Application.Exit();              System.Diagnostics.Process.Start...(Application.ExecutablePath);          }  用Environment.Exit就无法完成这个功能

    3.4K40

    c-atexit()和_exit()

    main(void) { //int atexit(void (*func)(void)); //注册终止函数(即main执行结束后调用的函数) /*注意:按照ISO C的规定...,一个进程可以登记多达32个函数,这些函数将由exit自动调用。...atexit()注册的函数类型应为不接受任何参数的void函数,exit调用这些注册函数的顺序与它们 登记时候的顺序相反。同一个函数如若登记多次,则也会被调用多次。...*/ atexit(func); _exit(0); } A:这是因为使用了 _exit() 方法。此方法并没有调用清除数据相关的方法,比如 atexit()等。...exit和_exit都是用来正常终止一个进程的,主要区别是_exit会立刻进入内核,而exit先执行一些清除工作(包括执行各种终止处理程序,关闭所有标准I/O等,一旦关闭了IO,例如printf等函数就不会输出任何东西了

    49210

    初识C语言·2

    一个整型占4个字节,短整型占2个字节,长整型占8或者4个字节,更长的整型占8个字节。 有人就问了,欸long为什么是两种情况,这是因为C语言中规定占字节数long>=int,取决于多少位系统。...相信不少刚接触C语言的认为答案是1.5,那么结果是否如此呢?...当然,也可以进行连续赋值,如: int a = 1; int b = 2; int c = 0; c = b = a+3;//连续赋值,从右向左依次赋值 C语言支持这种写法,但是这种代码不易理解,所以建议拆开写...复合赋值符 写代码的时候我们经常会对一个数进行自增自减的操作,如下 int a = 0; int b = 0; a = a+3; b = b-2; C语言中提供了更加方便的写法 int a = 18;...三目操作符,即是有三个操作数的,在C语言中有且仅有一个三目操作符, 实现代码是 (exp1 ? exp2:exp3)exp是表达式的意思。

    47510

    指针2——C语言

    形参用字符指针变量接收arr,count作为计数器,记录字符个数,当记录到’\0'时,循环停止,返回count;  二,使用指针访问数组 1.1一维数组 int main() { int arr[10] = { 1,2,3,4,5,6,7,8,9,10...代码展示: int main() { int arr[10]={1,2,3,4,5,6,7,8,9,10}; int (*p)[10]=&arr; for(int i=0;i<10;i...int a=10; int* p1=&a; int** p2=&p1; 对指针变量p2来说,它先于*结合,证明他是一个指针,再与int*结合,证明它所指向的对象是整形指针类型,是一个二级指针。...int* arr[10];//arr先于[10]结合,说明它是一个数组,再与int*结合,说明它的元素类型是int* 指针数组模拟二维数组  这里,arr1就是一维数组arr1首元素地址, 同理,arr2,...int arr1[3]={1,2,3}; int arr2[3]={2,3,4}; int arr3[3]={3,4,5}; int *arr[3]={arr1,arr2,arr3};

    12810

    C语言基础(2)

    数据类型;常量,变量 数据类型 c语言如何描述:常量——不能改变的量;                             变量——能被改变的量 定义变量的方法  #下表为定义整型变量的示范案例,最终执行结果为...#include int main() { int age=20; age=age+2; printf("%d\n",age); return 0; } 打印时需注意:1....打印整型——%d                           2.打印单精度浮点型(float)——%f                            3.打印双精度浮点型(double...2.全局变量的作用域的是整个工程。 生命周期:变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段。                ...2.全局变量的生命周期是:整个程序的生命周期。

    26210

    c语言进阶(2)

    类型在c语言中为什么有这么多种?因为应用场景不同,解决应用场景应对方式不同,需要空间的大小也不同。 sizeof不仅可以求内置类型,还能够求自定义类型。...char c=0这样写是没有问题的,但是不便于用户理解。...那么,我们就理解了,对于多少位,应该是这样一个范围: 那么,就让我们根据一些练习题练习一下,看看是否掌握了吧 int i=-20,等于2的4次方+2的2次方,因为都是4个字节,所以都是32个比特位。...3次方+2的1次方     0000  0000  0000  0000   0000   0000  0000 1010 +  1111   1111   1111   1111   1111   ...所以c99当中的bool类型可移植性较好。 运行下面这个程序: 我们会发现输出结果是1 2 3。 第一种比较方法不推荐,因为我们会误认为是整数比较。第二种方法也不推荐,false只有C99支持。

    27710

    初识C语言(2)

    while(line<=20000) { line++; printf("我要继续努力敲代码\n"); } if(line>20000) printf("好offer\n"); return 0; } 6C语言中如何实现循环呢...C语言中给了数组的定义:一组相同类型元素的集合 8.1数组定义 数组的作用就是存放一组相同类型的数,[]里面是数组的大小,10表示这个数组可以存放10个元素,arr是数组名,int是表示这个数组是整形数组...int arr[10] = {1,2,3,4,5,6,7,8,9,10};//定义一个整形数组,最多放10个元素 8.2数组的下标 C语言规定:数组的每个元素都有一个下标,下标是从0开始的。...在C语言中,0表示假,非0表示真。&和*我们讲指针时再讲。·~后期讲。 !就可以把真假互换。  sizeof可以计算类型大小。...感谢大家的阅读,下期我们将结束初识C语言,让我们下期再见。

    31510
    领券