天天看点

c语言实战开发(一分为?) 2019-12-04 Day9一.函数的简单应用,以及多文件的应用二.指针

内容

1:函数与多文件的简单应用

2:指针

一.函数的简单应用,以及多文件的应用

我们在写程序的时候,为了增加可读性和移植性等,常常会将一个程序的代码分成多个文件:比如说简单地实现一个计算器的功能,将这个小程序分成如下三部分
c语言实战开发(一分为?) 2019-12-04 Day9一.函数的简单应用,以及多文件的应用二.指针

在头文件里面声明函数

#include<stdio.h>
//头文件里面声明函数
int add(int a,int b);//加
int minus(int a,int b);//减
int multiply(int a,int b);//乘 
int devide(int a,int b); //除
           

在实现文件里面实现函数

注意:这里的实现文件可以不用导入#include"calculator.h"因为main.cpp里面已经有了,也就是说main.cpp里面不能省略这个导入头文件
//这是实现文件
//1.先导入需要实现的头文件
#include"calculator.h"//导入自己的用"" 
//2. 实现这个头文件里面的所有方法
int add(int a,int b){
    return a + b;
}//加
int minus(int a,int b){
    return a - b;
}//减
int multiply(int a,int b){
    return a * b;
}//乘 
int devide(int a,int b){
    if(b == 0){
        return 0;//如果被除的数等于0,则返回0(这个不一定非得这样,具体看程序要求) 
    }else{
        return a / b;
    }
    
} //除
           

然后是主函数

#include<stdio.h>
//1.程序的入口函数
//main.cpp是为了让阅读者知道我这里面写的是入口函数 
//2.将不同的功能模块用不同的.h .cpp来封装
//.h是头文件,主要做函数的声明(不能实现)
//.cpp是实现文件,函数的具体实现{} 
//3.导入头文件进行使用
#include"calculator.h"//导入自己写的头文件 
int main(void){
    int a;//保存前者输入的数字
    int b;//保存后者输入的数字 
    printf("请输入两个数字:");
    scanf("%d",&a);
    getchar();
    scanf("%d",&b);
    printf("a + b =%d\n",add(a,b));
    printf("a - b = %d\n",minus(a,b));
    printf("a * b = %d\n",multiply(a,b));
    printf("a / b = %d\n",devide(a,b));
}
           

二.指针

是一种数据类型,类似int float,指针装地址型数据,所占空间大小八个字节。

1.作用:

如果想在函数之间传递数据,而且这个数据个数大于1,即传递多个数据,而一个return只能返回一个值,那必须用指针。

2.类型:

整形指针,字符型指针,函数指针等等

3.✳作用:

①:声明的时候表示是一个指针变量

②:在使用过程中在前面加就是表示指针指向的值

4.值:

是一个变量的地址

5.指向的值:

✳p(指针变量只能指向同种数据类型的地址)(所以也可以称指针为内存操作运算符)

注意:变量本身不占空间,它只是一种映射关系,映射到那个内存空间。(但是我们平时就理解为变量占空间)

声明一个变量:比如 int a;没有给值,没有立刻分配内存空间,即没有地址。

定义一个变量:比如 int a = 10;则立刻分配了内存空间,并且赋值。二级指针要多一个✳即有两个✳

6.运算

7.指针和数组

8.指针和函数(重点)(6 7 8在下节)

总结

1:通过对计算器的很简单的操作的代码书写,对函数的理解更深,并且大致了解了一下一个程序的构成

2:指针其实之前已经学过,所以这里收获不算多,但是有一点,就是变量名字本身不占空间这个之前没有接触过,今天算是掌握这个知识点了