• C语言学习函数


    函数的作用:(1) 提高代码的复用率; (2)提高程序的模块性

    函数的分类:

    (1)系统库函数, 标准c库: 导入头文件--声明函数  , 根据函数原型调用

    (2)用户自定义

    函数定义:

    包含函数原型:返回值类型, 函数名,形参列表, 函数体(大括号一对,具体代码实现)

    int add(int a, int b, int c)  : int a 就是形参

    函数调用:

    包含函数名(实参列表),在调用时候,传参必须严格按照形参格式填充, 即参数的个数, 类型, 顺序都必须一致

    int a = add(4,28);

    函数声明:要求在函数调用之前, 编译器必须见过函数定义。 负责, 需要函数声明

    包含 函数原型(返回值类型, 函数名,形参列表)+“;”

    隐式声明, 如果在调用函数的时候, 编译器在此之前没有找到这个函数的定义, 就会自动做隐式声明

    隐式声明的格式是这样的: 返回值类型都是int吗,根据调用的语句, 自动补全函数名和形参列表。【不要依赖隐式声明】

    #include<stdio.h>
    
    int main(void)
    {
        int result;
        result = add(1,2);// 编译器会自动声明函数 int add(int a, int b); 这就是函数原型, 隐式声明, 默认都是声明成int 函数, 所以如果下面的函数是void add(), 那声明就会出错
        printf("the add result is %d\n", result);
    }
    
    int add(int a, int b) 
    {
    
        int result;
        result = a + b;
        return result;
    }
    the add result is 3

    这种情况下, 也能运行成功

    但是如果把int add( ) 变成void add(),上面的code 就会出错

     这里的type冲突是因为, 函数隐式声明会把add 函数变成int 型, 但是自己的code 没有声明, 写的是float, 所以会冲突

    #include<stdio.h>
    
    int add(int a , int b); //函数声明, 函数原型+;
    
    int main(void)
    {
        int result;
        result = add(1,2);
        printf("the add result is %d\n", result);
    }
    
    int add(int a, int b)//这是函数原型
    {
    
        int result;
        result = a + b;
        return result;
    }

    the add result is 3
  • 相关阅读:
    MySQL监控脚本
    django学习笔记【004】创建带有model的app
    MySQL-group-replication 配置
    MySQL配置文件模板
    Python 正则表达式
    MYSQL的安全模式:sql_safe_updates介绍
    Git branch && Git checkout常见用法
    git rebase和git merge的用法
    Git最牛最全详解
    理解npm run
  • 原文地址:https://www.cnblogs.com/shunguo/p/16818591.html
Copyright © 2020-2023  润新知