美文网首页
C语言函数

C语言函数

作者: 一直很安静_25ae | 来源:发表于2019-06-03 17:00 被阅读0次

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

相关文章

  • iOS开发 -- C语言基础3(函数)

    iOS开发 -- C语言基础3(函数) 什么是函数 一、函数的分类 C语言中的函数就是面向对象中的"方法",C语言...

  • gcc

    C语言 c语言是面向函数的语言,所以c语言中全部都是函数 看看单文件中对函数的生命和调用。 要先对函数进行声明再进...

  • 是否还需要在源文件中添加“extern C”?

    c++调用c语言的函数时我们一般在c语言函数声明处用extern "C"包c函数。例如: extern "C"的主...

  • 2018-08-29日常C笔记

    C语言初学笔记 C语言程序是由函数组成的C语言程序启动时,系统就会自动调用名字叫main的函数C语言规定了函数定义...

  • Redis 源码简洁剖析 02 - SDS 字符串

    C 语言的字符串函数 C 语言 string 函数[https://devdocs.io/c-strings/],...

  • 函数变参的使用

    介绍C/C++,java,和go语言对函数变参的使用。 1. C/C++语言的变参 1.1 变参函数声明 变参函数...

  • 2.头文件与类的声明

    C语言和C++语言中 函数与数据使用方法的不同 C语言中由于C语言中没有某些关键字,所以数据可以被全部函数所使用 ...

  • scanf函数

    scanf函数 一、是什么? C语言下的scanf()函数是样式化输入函数,也称为阻塞式函数,有C语言自带的库提供...

  • C++语言学习之面向对象

    1.C语言与C++语言的区别 C++面向对象 C 面向过程 函数+结构体 C++可以运行调用C语言 反之 C语言无...

  • C/C++ 函数地址

    C 函数 C 语言中没有类的概念,只有普通的函数。 控制台输出: C++ 函数 C++ 函数有如下几种: 1)普通...

网友评论

      本文标题:C语言函数

      本文链接:https://www.haomeiwen.com/subject/hdocxctx.html