【C】区分exit;return ;break;continue

这几个总是记混,今天整理下,记录下来

exit

*main函数终止的两种方法:1.执行return语句. 2.调用exit函数
在main函数中下面两种方法等效
return 表达式; or exit(表达式);
return语句和exit函数之间的差异:无论哪个函数调用exit函数都会导致程序终止(可用于定位退出点),return 语句仅当由main函数调用时才会导致程序终止。

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

int test1(void)
{
    printf("point 1");
    exit(0);//在这里返回,并退出程序
    printf("point 2");
}

int main()
{
    test1();
    printf("point 3");
    return 0;

   输出:point 1

*exit定义在 stdlib.h 中,原型为

>void exit(int status);

return

*非void函数必须有return来指定要返回的值(会有隐式转换)
*返回的值可以是常量

>return 0;
>return status;

也可以是表达式

 int gcd(int a,b)
{
    return  b?gcd(b,a%b):a; 
}           //这是一个利用递归找最大公因数的函数

*void函数中可以用return;

void test2(void)
{
    printf("abc");
    return;
    printf("def");
}
输出abc

break && continue

*break是结束循环。 continue是结束本次循环。
循环是有很多次的,break之后不再循环,continue结束本次循环后,再开始下一次的循环。

void test3(void)
{
    int i=0;
    while(i++<10)
    {
        if(i==5break;//在这里退出循环,即结束循环

    printf("%d",i);
    }//输出 1234

void test4(void)
{
    int i=0;
    while(i++<10)
    {
        if(i==5)
         continue;//仅在i==5这一次跳出循环,即结束本次循环

    printf("%d",i);
    }//输出1234678910

猜你喜欢

转载自blog.csdn.net/lonelyisland_syz/article/details/79280985