1 要使程序中途跳出,可以使用return语句,跳敏衡出该函数。
如
int fun(int n){
int i
if(n<0) return -1// 在n为负数下,提前退出该函数。
//执行正常功能。
for(i=0i<ni++)
printf("%d ", i)
}
2 要使程序提前结束, 可以调用exit()函数。
如
int fun(int n){
int i
if(n<0) exit(-1)// 在n为负数下,提前结束程序。
//执行正常功能。
for(i=0i<ni++)
printf("%d ", i)
}
3 二者区别:
a) 使用exit函数,会结束整个程序。 而使用return只是结束当前函数,还会到主调函数处继续运行。
b) 在main函数中使用return语句,等效于调用exit函数,同样会结束程桥橘做序。
c) 调用伍搏exit函数时,需要引用头文件stdlib.h。
出现这种情况与溢出造成的有关 ,可以设置断点观察下,在哪里自动关闭。常见的容易溢出的原因是第一个是数组下标越界,第二个是除数为0当然还有其他的。
常见的原因因为程序没有设置暂停,运行完了之后缓侍,就自动关闭。可以在程序最后加上getchar()或者 system(pause)。实现程序暂停的效果。
pause是cmd中的一个命令,通过system函数调用执扰码吵行。这样程序模指会在执行这个之后结束,换句话说就是按任意键退出,而不会直接退出。
#include<局陵stdio.h>#include <stdlib.h>
void main()
{
int i=0
printf("1.执行1 *** 作\n2.执行2 *** 作\n3.退出\n")
printf("请输入你所需的 *** 作\n")
scanf("%d",&i)
switch(i)
{
case 1:printf("1 *** 作")break
case 2:printf("2 *** 作"高凯)break
case 3:system("桐念戚exit")break
default:break
}
system("pause")
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)