C语言中函数什么时候声明?什么时候定义?最好举例说明。

如题所述

函数可以在调用函数的函数(比如main函数)之前定义,这样就无需声明了;

举例:

int add(int x,int y) { return x+y; } //在编译程序编译到main的调用add之处时,由于已经编译过add的函数了,因此编译程序已经知晓调用规则,因此可以省略声明语句
void main() { int x=5,y=6,c; c=add(x,y); printf("%d\n",c); }

如果函数在调用函数的函数之后定义,为了通知编译程序要调用函数的格式,需要在调用函数的函数前添加函数的声明。

举例:

int add(int x,int y); //函数声明也可以简单地写成int add(int,int);通知编译程序main中调用add的规则即可
void main() { int x=5,y=6,c; c=add(x,y); printf("%d\n",c); }
int add(int x,int y) { return x+y; }

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-07-20

声明在定义的前面。

如果你需要调用一个函数,但是这个函数的定义段在调用位置的后面。即调用的时候,该函数还未定义好,会报错。我们可以先声明有这个函数,这样就不会报错,编译器就能在后面的代码段找到该函数定义代码。

比如:

void add1();//声明add1函数
int main()
{
    add1();//调用add1函数在add1函数定义之前
    return 0;
}
void add1()
{
   //add1函数的内容
}

第2个回答  推荐于2019-08-05
如果函数在主函数之后,则需要在主函数之前进行声明,如:
void aaa();
main(){
...

}
void aaa()
{....}
如果程序写在主函数之前,则不需要声明:

void aaa()
{....}
main(){
...

}本回答被网友采纳

C语言中函数什么时候声明?什么时候定义?最好举例说明。
函数可以在调用函数的函数(比如main函数)之前定义,这样就无需声明了;举例:int add(int x,int y) { return x+y; } \/\/在编译程序编译到main的调用add之处时,由于已经编译过add的函数了,因此编译程序已经知晓调用规则,因此可以省略声明语句void main() { int x=5,y=6,c; c=add(x,y);...

c语言中什么情况下必须做函数说明
是声明吧,要是函数定义在主函数之后,则要在之前要声明 若函数定义在主函数之前,则不需要声明

...中所谓的函数声明是指什么?为什么要进行声明?什么叫做函数声明?_百度...
{ foo();} void foo(){ ;} 以上代码中,第一句就是所谓函数声明。其实直接用函数定义也就是void foo(){;}替代第一句也是可以的,不过函数的声明让你可以在定义它的代码段之前使用它。比如以上的例子中,在编译进行到main函数中的foo调用的时候,foo函数还是没有定义的,但我们通过foo的声明告诉了...

在C语言中,函数定义跟函数声明有什么区别有什么不同之出?
int fun(int a, int b);函数定义:int fun(int a,int b){ int c;c=a+b;return c; } 声明就象是定义的头部,比较简略,函数是用来调用的,如果函数定义部写到调用的位置后面,执行到调用位置,

编程中的,定义、声明、初始化,各指的是什么,举例说明下
定义就是定义,比如INT A,就是定义一个A变量.函数也是.大体就是没有的,你造一个出来(表达不好,知道意思就行).初始化就是你定义出来的变量,它最开始的值是多少,你得给它一个.int a = 100; int a; a = 100; 这种就是了.一定记得初始化,否则,有时,会遇上一些莫名其妙的问题.主要说的是...

函数声明与函数定义分别在程序中的什么位置?为什么?
函数,是编程语言中可以独立运行的一个代码块。在C语言中,程序从main()函数开始运行,其他函数要被main函数调用才可以运行。在从shell解释器运行编译好的可执行程序时,main函数会被shell启动,开始运行。C语言的函数在使用时要经过3个步骤:声明、定义、调用。函数声明,就是给出函数的原型,让程序员...

今天看C语言书上说函数只能定义一次,而声明可以有好多个,请高手给我...
因为在C语言中不允许函数的重写,所以一个函数只能定义一次。。而函数申明是为了让调用它的其他函数能知道它的存在,就比如说:当你的main函数想调用 fun 函数时,如果fun函数在main函数的下面,具体如下:void main() { fun() ; \/\/ 调用fun函数 } void fun() { ... \/\/ 实现部分...

C语言中函数的定义格式是什么,函数原型声明的语法格式?
函数声明就是在函数调用之前进行的一种说明。下面举例说明两者的语法格式:include<stdio.h>int fun(int a, int b); \/\/ 函数的声明void main(){ int x=1, y=2; int c; c = fun(x+y);}\/\/ 下面的fun函数就是函数的定义int fun(int a, int b){ return a+b;}注:如...

c语言中函数的定义从哪里开始到哪里结束
在C语言中,一个函数的定义从函数声明开始,到函数结束大括号 `}` 结束。函数声明包括函数的返回类型、函数名称和一对圆括号,圆括号内可以包含参数列表。如果函数没有参数,则圆括号是空的。下面是一个简单的函数定义示例:```c int add(int a, int b) { return a + b; \/\/ 函数的主体部分 ...

在C语言中,什么是声明、定义、初始化?有什么区别
声明和定义差不多,比如,声明一个变量,和定义一个变量,初始化就是将该变量赋初始值,比如int a = 0; 声明了一个int 类型的变量,变量名是a,初始值为0,给变量初始化很重要,因为该变量所在的内存可以已经有一个值了,不初始化,改变量可能是个垃圾值,对后面的计算有影响 ...

相似回答