C语言中什么是原型定义

//举例说明
#include <stdio.h>
int max(int *a, int m, int n);//这行就是函数原型,函数定义在主函数后面。
                              //函数原型的就是实现函数先(main中调用),
                              //后(定义在后面)。
int main(int argc, char *argc[])
{
    int a[3][4] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
    printf("max=%d\n", max(&a[0][0], 3, 4));
    return 0;
} 
int max(int *a, int m, int n)
{
    int ma = a[0], i, j;
    for (i = 0; i < m; i++)
	for (j = 0; j < n; j++)
	{
	    if (ma < a[i * n + j]) 
	    {
	        ma = a[i * n + j];
	    }
	}
	return ma;
}

一个函数,可能在别处被引用,或是在本文件中被引用。其中在本文件中被引用时,规范的函数书写格式是先写main函数,然后在main函数下方写被调用的函数,即先引用而后面才有函数定义。此时编译器需要先行知道这个函数返回值类型参数类型,才可以正确地帮着做严格的数据类型参数个数的检查 (如不提前声明就会当做是返回int型,参数都当int型且不能检查参数个数),这个函数在定义之前被提前声明了一下函数形式,就是所谓的函数原型了,函数原型中,变量名是可以省略

或者说:

函数原型就是函数本身定义的形式。
函数的格式为:
return_type func_name(arg_list);
所以函数的原型,就是根据函数名查找到的声明或者定义的形式,通过原型可以确认函数的返回值类型(return_type),以及需要多少个参数,每个参数的类型是什么(arg_list)。
这样才能够确定,如何调用函数才是正确的。

转载于:https://my.oschina.net/wangsifangyuan/blog/633896

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值