zoukankan      html  css  js  c++  java
  • C 语言函数要先声明后定义

    #include <stdio.h>
    int main(int argc, char *argv[])
    {
           printf("%d\n",max(5,2));
        return 0;    
    }

    int max(int a,int b)
    {
        int z;
        z=(a>b)?a:b;
        return z;
    }

    为什么上面的代码执行没有错误,C函数一定要先声明后引用。

    我查了一下网上有高手是这样说的:在c语言中,如果定义函数时选择默认返回类型(即int类型),则这个函数放在任意位置都是可以被别的程序调用的,而且编译无误~ 但是这是一个很大的陷阱。你会发现当你给那个函数任意个参数时,编译也能通过,还能执行,但是很可能产生错误。 

    后来我就把代码改了一下,试一下真的不成功,呵呵,初学。

    char max(int a,int b)
    {
        int z;
        z=(a>b)?a:b;
        return 'a';

    }

    把函数改成这样就出错了,因为返回类型不对了,此文章只为了记录,高手勿看。 

  • 相关阅读:
    vue
    mongodb
    ejs模板引擎
    ajax
    node.js2
    node.js1
    bootstrap,ECMA
    商城
    面试:----Struts和springmvc的区别--区别上
    OpenStack
  • 原文地址:https://www.cnblogs.com/stalwart/p/2694525.html
Copyright © 2011-2022 走看看