[整理]C语言函数说明和定义

函数的一般形式是:
type-specifier function_name(parameter list) parameter declarations{
   body of the function
}

1.类型说明符定义了函数中return语句返回值的类型,该返回值可以是任何有效类型。假如没有类型说明符出现,函数返回一个整型值。

当一个函数没有明确说明类型时, C语言的编译程序自动将整型( i n t)作为这个函数的缺省类型,缺省类型适用于很大一部分函数。

当有必要返回其它类型数据时,需要分两步处理:

  (1)首先,必须给函数以明确的类型说明符;

  (2)其次,函数类型的说明必须处于对它的首次调用之前。只有这样,C编译程序才能为返回非整型的值的函数生成正确代码。

2.返回非整型数据的函数被使用之前,必须把它的类型向程序的其余部分说明。

若不这样做,C语言的编译程序就认为函数是返回整型数据的函数,调用点又在函数类型说明之前,编译程序就会对调用生成错误代码。

为了防止上述问题的出现,必须使用一个显式的函数说明语句,通知编译器程序这个函数返回什么值。

3.显式的函数说明语句可以是调用函数外部,也可以是内部。

#include<stdio.h>

double func1();//函数说明
double func2();//函数说明

int main(void)
{
    double ret;

    ret= func1();
    printf("%f",ret);

    ret= func2();
    printf("%f",ret);

    return 0;
}

double func1( ){//函数定义
    return 2.1;
}

double func2( ){//函数定义
    return 3.2;
}
#include<stdio.h>

int main(void)
{
    double ret;

    double func1();//函数说明
    double func2();//函数说明

    ret= func1();
    printf("%f",ret);

    ret= func2();
    printf("%f",ret);

    return 0;
}

double func1( ){//函数定义
    return 2.1;
}

double func2( ){//函数定义
    return 3.2;
}

[整理]C语言函数说明和定义,布布扣,bubuko.com

时间: 2024-10-18 19:48:49

[整理]C语言函数说明和定义的相关文章

c 语言 函数的整理 百度脑图版本

下面整理一下C语言函数的知识点 :使用百度脑图进行整理,详情请看上传的图片: 版权声明:本文为博主原创文章,未经博主允许不得转载.

C语言的函数声明,定义,调用以及exit退出

1 #include <stdio.h> 2 #include <stdlib.h> 3 void singing(); 4 int main() 5 { 6 singing(); 7 system("pause"); 8 } 9 10 void singing() 11 { 12 printf("after party~after party~我已然赶不上地铁\n"); 13 } 上述代码段是一个C语言函数的声明过程,首先要声明一个函数(第

函数指针及其定义和用法,C语言函数指针详解

函数指针大家了解一下就行了,用得不多,但一定要认识它. 什么是函数指针 如果在程序中定义了一个函数,那么在编译时系统就会为这个函数代码分配一段存储空间,这段存储空间的首地址称为这个函数的地址.而且函数名表示的就是这个地址.既然是地址我们就可以定义一个指针变量来存放,这个指针变量就叫作函数指针变量,简称函数指针. 那么这个指针变量怎么定义呢?虽然同样是指向一个地址,但指向函数的指针变量同我们之前讲的指向变量的指针变量的定义方式是不同的.例如: int(*p)(int, int); 这个语句就定义了

C语言函数、函数指针解析

函数.函数指针的理解: 函数的定义: void myfunc(void) { } 函数的声明 void myfunc(void); 函数指针的定义.初始化.赋值: 定义:void (*funcp)(void); 初始化: void (*funcp)(void) = &myfunc; 赋值 void (*funcp)(void); funcp = &myfunc; 函数调用:(*funcp)(); funcp(); 也可以这样赋值:void (*funcp)(void); funcp = m

JavaScript函数的多种定义方法

缘起 javascript和其他编程语言相比比较随意,所以javascript代码中充满各种奇葩的写法,有时雾里看花,当然,能理解各型各色的写法也是对 javascript语言特性更进一步的深入理解,那么他有几种写法呢? ( function(){…} )() 或者 ( function (){…} () ) 首先要明白两个知识点 js中函数是引用类型: 函数一般执行方式:函数名+(): 下面的例子帮你理解引用类型 var a = function(x,y){ console.log(x + y

(转)如何编写有多个返回值的C语言函数

1引言    笔者从事C语言教学多年,在教学中学生们常常会问到如何编写具有多个返回值的C语言函数.编写有多个返回值的函数是所有C语言教材里均没有提到的知识点,但在实际教学与应用的过程中我们都有可能会遇到这样的问题.有学生也尝试了不少方法:如把多个需要返回的值作相应的处理后变成一个可以用return语句返回的数据,再在主调函数中拆开返回的数据使之变成几个值:或者把需要返回多个值的一个函数分开几个函数去实现多个值的返回.这些方法虽然最终都能实现返回要求的多个值,但从程序算法的合理性与最优化方面去考虑

Linux汇编GAS调用C语言函数实例

Blum的书上只讲了C语言调用汇编,没讲汇编调用C语言.我自己尝试了下. 最终试验成功了,在此写出与大家分享.期间历经无数错误,无数异常,我不是醉了,而是跪了...好在最后好了. 程序实现一个换值功能,在main.s里定义a=10,b=20,然后调用C语言函数把a,b换值. 新建两个文件分别为main.s的汇编文件,还有pro.c的C语言函数文件. main.s的代码如下: .section .data a: .int 10 b: .int 20 .section .text .globl ma

08-C语言函数

一. 什么是函数 l 任何一个C语言程序都是由一个或者多个程序段(小程序)构成的,每个程序段都有自己的功能,我们一般称这些程序段为"函数".所以,你可以说C语言程序是由函数构成的. l 比如你用C语言编写了一个MP3播放器程序,那么它的程序结构如下图所示: 二. 函数的定义 1. 定义函数的目的 l 将一个常用的功能封装起来,方便以后调用 2. 定义函数的步骤 l 函数名:函数叫什么名字 l 函数体:函数是干啥的,里面包含了什么代码 3. 格式 l 固定格式(很多语言的函数都是这么写的

从linux0.11中起动部分代码看汇编调用c语言函数

上一篇分析了c语言的函数调用栈情况,知道了c语言的函数调用机制后,我们来看一下,linux0.11中起动部分的代码是如何从汇编跳入c语言函数的.在LINUX 0.11中的head.s文件中会看到如下一段代码(linux0.11的启动分析部分会在另一部分中再分析,由于此文仅涉及c与汇编代码的问题,). after_page_tables: pushl $0 # These are the parameters to main :-) pushl $0 pushl $0 pushl $L6 # re