c笔记10---多文件操作,Makefile,结构体 struct 及结构体变量,重命名 typedef

本文介绍了C语言中多文件操作的步骤,包括如何使用头文件、extern关键字和Makefile。讨论了结构体的声明和使用,以及typedef为数据类型起别名的方法。同时,讲解了数据对齐在结构体中的影响以及如何控制结构体成员的二进制位数。
摘要由CSDN通过智能技术生成
1.    一个程序分装在两个 .c 文件里面(同一个文件夹),需要增加一个 .h 文件,然后两个 .c 文件都 include 那个 .h 头文件。
    而且一个 .h 头文件只能链接一个 .c 文件。
    头文件里面的东西在程序运行的时候,是不存在的,所以,函数声明可以放在头文件里,变量声明不可以。
    编写头文件的时候,要使用条件编译,避免头文件被多次编译。
    一个加法程序如下:
    
    主函数 code.c 文件如下:
    #include <stdio.h>
    #include "add.h"    // code.c 和 add.c 在同一个文件夹,所以用 “”,而不是 < >
    extern int result;    // 全局变量,在 add.c 已经定义了,此处只是再次调用而已,所以要加 extern
    int main()
    {
        add(7, 3);        // 因为它无返回值,所以只能在此单独调用,不能写在 printf 里面。
        printf("%d\n", result);
        return 0;
    }
    
    加法函数 add.c 内容如下:
    #include <stdio.h>    // 如果下面需要调用这个库,则在这需要声明,与主函数是否有无关
    #include "add.h"    // 记得加入这个头文件
    int result;            // 定义全局变量,除了此处不加 extern,其他都得加。注意:此处不能用 static 修饰 result,否则作用域变小,main函数无法调用。
    void add(int value, int value1)        // void无返回值
    {
        result = value + value1;
    }
    
    连接函数 add.h 如下:
    #ifndef __ADD_H__        // 如果add.h未被定义,则执行下面的语句(这里是#ifndef,而不是ÿ
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值