zoukankan      html  css  js  c++  java
  • 【C语言】C语言函数

    目录:


    1. 【函数注意点】


    2. 【函数目的】


    3. 【函数格式】


    4. 【函数定义前需明确的条件】


    5. 【函数的形参、实参】


    6. 【函数返回值注意点】


    7. 【为什么要return】


    8. 【C语言上手常见问题】


    9. 【外部函数和内部函数


    1. 函数注意点

    · 每条语句后面必须有;号

    · 除 “ ” 号内引用起来的地方,其它任何地方都不能出现中文

    · main函数中的return 0;可以写,也可不写

    · main函数前的int可以写也可以不写

    · main函数后面()号不可省略

    · 同一个程序中只有一个main函数(main函数是程序入口)


    2. 函数目的

    将一个常用的功能封装起来,方便以后调用,使代码更加整洁,增加可读性。


    3. 函数格式

    格式:                                                                例:定义一个返回值为 int 类型的 test 函数,包含 a,b 2个 int 类型的形参,返回 0 。

        返回值类型 函数名 (形参列表)                         void test (int a, int b)
        {                                                                            {
           函数体(代码块)                                                   return 0;
        }                                                                            }


    4. 函数定义前需明确的条件

    · 有意义的名称(方便查阅、交流,减少沟通成本)

    · 是否有形参?是否有返回值?它们的数据类型是什么?


    5. 函数的形参、实参

    形参:定义函数时函数名后面()号中的参数。

    实参:调用函数时传入的参数。


    注:

         · 形参个数必须与实参一致。

         · 函数体内部不能定义与形参一样名称的变量

         · 函数内部的形参值不会影响到外部的实参值

         · 一个函数可以没有形参或有无数个形参 


    6. 函数返回值注意点

    · void 代表没有返回值

    · 如果没有明确返回值类型,默认为 int 类型

    · 就算明确了返回值类型,也可以不返回任何值


    7. 为什么要return

    告诉系统退出返回0为正常,除0以外为非正常退出。


    8. C语言上手常见问题

    · 函数是否可嵌套使用?   否

    · 函数是否能重复声明?   是

    · 函数是否能重复定义?   否

    · 为什么能重复声明而不能重复定义函数?

    C语言中声明函数是为了告诉系统,我们的代码中包含了声明的函数。而定义函数是函数的具体实现。重复定义的话系统会将其看成不同的函数,当函数名与返回值又相同,编译时便会报错。如果只声明,没有实现,则编译时不会报错,但链接时不会通过。

    · 为什么编译时无报错,但运行时报错?

    因为编译时只检测语法是否合理。如果合理,编译器会帮我们队程序进行链接操作,所以出现这种情况,肯定是代码不规范或逻辑错误导致。


    9. 外部函数和内部函数

    1.外部函数 
    定义的函数能被本文件和其它文件访问(默认)。

    注:不允许有同名的外部函数。

    2.内部函数 
    定义的函数只能被本文件访问,其它文件不能访问。

    注:允许不同文件中有同名的内部函数。


  • 相关阅读:
    base64编码是什么1
    base64编码是什么
    算法
    spring 的 ApplicationContext.getBean(type) 无法获取bean,报错
    多个tomcat shutdown.sh 导致无法正常关闭的问题
    springboot server.address 配置问题
    jsp页面错误的全局处理
    ASP.NET MVC三层关系
    ASP.NET指定页面转PDF、JPG(插件)
    Java理论知识及面试题
  • 原文地址:https://www.cnblogs.com/miaomiaoshen/p/5188620.html
Copyright © 2011-2022 走看看