【C语言】函数笔记

 函数(function)
 

 1.1函数定义

#include <stdio.h>
void/*返回类型*/ sum/*函数名*/(int begin, int end/*参数表*/)//函数头
{                                              //函数体
    int  i;                                   //函数体 
    int sum = 0;                       //函数体
     for (i = 0; i <= end; i++)    //函数体
     {                                       //函数体   
        sum += i;                      //函数体
     }                                      //函数体 
     printf("%d到%d的和是%d", begin, end, sum);  //函数体 
}
int main()
{
    sum(1, 2);
    sum(3, 3);
    sum(1, 9);

    return 0;
}
/*函数名(参数值)()起表示函数调用的重要作用,即使无参数也要()*/

1.2函数的返回值

 int max(int a, int b)
{
    int ret;
  if (a > b) {
    ret = a;  //可以用return a; return b;替换但不符合程序单一出口原则
}
  else {
    ret = b;
}
  return ret;/*停止函数执行并返回一个值*/
             /*如果函数有返回值 则必须使用带值得return*/
}
int main()
{
    int a, b, c;
    a = 4;
    b = 5;
    c = max(15, 16);
    c = max(a, b);/*返回值可以赋值*/
    c = (c, (max(a, b)));/*返回值可以继续赋值函数*/
    printf("%d", max(a, b));/*可以之间返回值输出*/
    return 0;
}

1.3函数先后关系
void sum(int a, int b);//声明(整体为函数)
//1.3.1  函数原型   

  /*1.函数头,以“;”结尾构成函数原型
    2.函数原型告诉编译器函数的构成(名称、参数、返回类型)
  */ 

1.4函数的调用——传值!

  //1.如果函数有参数,调用函数时必须传递给它数量、类型正确的值
  //2.可以传递的包括:字面量、变量、函数返回值、计算结果 
  //3.在调用时,只能传值给函数(每个函数有自己的变量空间,参数也独立与这个函数空间中)

/*eg:不能实现交换*/
#include<stdio.h>
void swap(int a, int b);
          /*a,b为形参————参数*/
int main()
{
    int a = 5, b = 6;
    swap(a, b);/*调用时a,b为实参————值*/
    printf("a=%d,b=%d\n", a, b);
    return 0;
}
void swap(int a, int b)
{         /*a,b为形参——————参数*/
    int swap;
    int x, y, t;
    t = x;
    y = x;
    y = t;
}

1.5本地变量(局部变量)  

//1.定义:函数每次运行,就会产生一个独立的变量空间,
//在这个空间中的变量是函数本次运行所独有的,称为本地变量。
  //2.定义在函数内部的变量以及参数都是本地变量
  //3.变量的生存期:出现——消亡(进块生出块亡)
  //4.变量的作用域:在程序什么范围内这个变量能起作用(块内)
  //5.块外定义变量在块内有效,块内定义变量出块无效
  //6.块内定义与块外同名变量会覆盖块外但不可在同一块定义同名变量

//1.6函数庶事儿——细节部分

   //1.无参数时:void f(void)确定无参 but void f()代表参数未知
   //2.逗号:在参数区分时是标点 but f(a,b)与f((a,b))不同
   //3.C语言中不可嵌套定义函数

注:1.初学者如有遗漏或错误请大佬及时指出和补充

       2.第一次写CSDN博客,请大佬提出建议或教学

       3.日后会继续在这篇文章补充C#函数相关知识

       4.愿意结识更多初学者一起努力

       

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CSVN.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值