C语言函数

2019-06-03  本文已影响0人  一直很安静_25ae

1.什么情况下定义函数:添加一个常用的新功能

 2.函数的定义格式

 返回值类型  函数名(形式参数列表){

    函数体

 }

int average(int num1, int num2) {   

  return (num1 + num2)/2;

 }

 3.定义函数需要明确的东西

 1> 起一个有意义的函数名

 2> 

参数注意点

 1.形式参数:定义函数时函数名后面中的参数,简称形参

 2.实际参数:调用函数式传入的具体数据,简称实参

 3.实参个数必须等于形参个数

 4.函数体内部不能定义和形参一样的变量

 5.如果是基本数据类型作为函数形参,纯粹是值传递,修改函数内部形参的值,并不会影响外面实参的值

 6.一个函数可以没有形参,也可以有无限多个形参

// 形式参数,简称形参

int  sum   (int   num1,int   num2)

{

    // 函数体内部不能定义和形参一样的变量

    // int num1;

    num1 =50;

    return  num1 + num2;

}

 return的作用:

 1> 退出函数

 2> 返回一个具体值给函数调用者

void  test(){

}

返回值注意点

 1> void代表没有返回值

 2> 如果没有明确说明返回值类型,默认是返回int类型

 3> 就算明确声明了返回值类型,也可以不返回任何值

 默认情况下,C语言不允许两个函数的名称一样

   


#include<stdio.h>

/*

 1.默认情况下,不允许有函数的名称一样

 2.函数不能嵌套定义

 3.函数不能重复定义,但是可以重复声明

 4.如果有函数的声明,没有函数的定义

 1> 编译可以通过,因为编译器只会检测语法合不合理,并不会检测函数有没有定义

 2> 链接报错,因为链接的时候会检测函数是否定义

 */

// 函数可以重复声明,既可以写在main函数的外面,也可以写在main函数里面,就是为了告诉编译器我有这个函数,你不要给我报错

//void printLine();

//void printLine();

int  main(){

    void  printLine(); //这个是函数的声明,如果函数的定义写在main函数的后面,如果想在main函数中调用后面的函数,必须在调用这个函数之前进行声明,函数的声明既可以写在main函数里面,也可以写在main函数外面

    printLine(); //这个是函数的调用

    return 0;

}

// 函数的定义

void  printLine(){

    printf("--------\n");

}

include

 1> 作用:拷贝右边文件的所有内容到#include所在的位置

 2> 自定义的文件用"",系统自带的文件用<>

 3> #include 的目的:拷贝printf函数的声明

多文件开发

 //李四的.h文件编写函数的声明

int     average(int a,int b);

int    sum(int a,int b);

int    minus(int a,int b);

int   multiply(int a,int b);

//李四的.c文件编写基本算数运算的函数

int  average(int a,int b){

    return(a + b)/2;

}

int sum(int a,int b){

    returna + b;

}

int minus(int a,int b){

    returna - b;

}

int multiply(int a,int b){

    returna * b;

}

//张三的.c文件编写main函数

#include<stdio.h>

#include"lisi.h"  //导入李四的函数声明.h文件

int main(){

    intscore1 =100;

    intscore2 =70;

    int c = average(score1, score2);

    int d = sum(score1, score2);

   printf("平均分是%d\n", c);

    printf("总分是%d\n", d);

    return 0;

}

多文件开发总结

1.函数的定义放.c文件,函数的声明放.h文件

2.如果要使用某个.c文件中定义的函数,只需要#include这个.c文件对应的.h文件

3..h文件的作用:被别人拷贝。编译链接的时候不需要管.h文件

4.cc xx.o xxx.o 将多个目标文件链接在一起

  cc xx.c xxx.c 将多个源文件编译、链接

 \n是一个转义字符

\t tab键

\" 一个双引号

printf函数返回的字符串常量的字符数,并不是字数

1个汉字占据3个字符

  int e = printf("哈h\"\ta\n");

  printf("e=%d\n", e); 

结果是:

哈占3个字节

h占一个字节

\"占一个字节

\t占一个字节

a占一个字节

\n占一个字节

所以e= 8

上一篇 下一篇

猜你喜欢

热点阅读