C语言 有很多h和c文件然后一个c文件中的函数会调
时间:2019-09-21

  C语言 有很多.h和.c文件,然后一个.c文件中的函数会调用另一个.c文件中的函数,要怎样才能保证才不会

  C语言 有很多.h和.c文件,然后一个.c文件中的函数会调用另一个.c文件中的函数,要怎样才能保证才不会

  C语言有很多.h和.c文件,然后一个.c文件中的函数会调用另一个.c文件中的函数,要怎样才能保证才不会出错?...

  有很多.h和.c文件,然后一个.c文件中的函数会调用另一个.c文件中的函数,要怎样才能保证才不会出错?展开我来答

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  .h文件作为接口存在的。所谓接口就是指类型定义、变量声明、函数声明等等,基本上不会在.h里面放置函数实现。

  这三行代码是为了保证在编译某一个.c或.cpp文件时,work.h头文件只编译一次。

  比方你在main.c里面打了10次#include work.h,这样预处理的时候会向main.c中拷贝10次work.h的代码(预处理时实际上会用work.h中的代码替代#include work.h这行代码),有了那三行就可以保证只有第一个拷贝的work.h参与编译,剩下的九个都跳过。(因为work_h在第一次#include的时候被定义了,往后就不会编译#ifndef .. #endif 中间的代码了)只要#include work.h,它会自动找到work.c中的work函数吗?嗯,只要你work.h中有work函数的声明。编译的时候只需要知道声明就够了(声明在work.h中),连接的是时候会从word.c中找定义(定义在work.c中)。如果是在linux环境下,用gcc编译,还用gcc work.c -o work吗?还是gcc main.c -o main?(其中main.c中有#include “work.h”)gcc work.c main.c -o main,试一下就知道了:)