c语言中头文件怎么写( 二 )


printf("%d°%d′%.4f″\n",a,b,c);
}
}
就可以在main.c函数中调用a.c中的函数了
很好理解吧 希望对你有帮助
请采纳答案,支持我一下 。
5.C语言中头文件和源文件写法有什么区别相同点:
头文件与源代码都是源文件,都用纯文本文件存储,都需要遵照C/C++语言规范来写,都可以使用类型定义和常、变量定义,都可以包含函数的声明和实现,都能包含宏定义,都使用相同的调用规范 。
不同点:
C/C++的编译器规定源代码文件必须包含函数入口,即main函数,或者winmain函数 。而头文件不得包含函数入口,也就是说,头文件不可以单独编译成一个程序,仅仅包含程序片断或者仅仅定义常、变量 。
关联:
【c语言中头文件怎么写】头文件是专为源代码调用而写的静态包含文件,可被源代码文件中的#include编译预处理指令解释,而将头文件完整拷贝到源代码的指令处,从而在编译时相当于在源代码中插入了函数声明或者实现 。
某些头文件包含了静态库中的函数调用声明,包含了LIB文件的调用信息,编译时静态链接进程序;而某些头文件是专为方便API调用而写的,里面包含了动态链接库的调用信息和规范,只有在运行时将DLL载入内存提取函数执行 。
也就是说,其实你将头文件里的信息完全写到源代码里,是可以实现完全相同的功能的 。如果你想要学写头文件,可以参照标准C/C++库的h文件 。
6.在c语言中,如何自定义头文件自定义头文件通常放在使用该头文件的源文件所在的目录中,并使用
#include "MyHead.h"
来包含 。
头文件是不编译的,因为C语言编译过程之前有个预编译过程 。在这个过程中用头文件中的内容替换源文件中“#include”命令,所以在编译器看来,没有头文件,只有源文件 。预编译过程还包括条件编译 。
头文件为了防止被重复包含,通常的格式是:
/* MyHead.h */
#ifndef _MYHEAD_H_
#define _MYHEAD_H_
(这里是头文件的内容)
#endif /* _MYHEAD_H_ */
补充:报错,报的什么错?
7.C语言里面怎么写头文件简单办法,先写完整程序,再把一部分抽出去,抽出去的存到 自己的头文件里,在抽出的地方写 #include。
例如,完整程序(计算平均值):
#include<stdio.h>
double mean(double *y, int N){
int i;
double s=0.0;
for (i=0;i<N;i++) s=s+y[i];
s = s / (double) N;
return s;
}
void main()
{
double x[10]={1,2,3,4,5,6,7,8,9,10};
printf("mean = %lf\n", mean(x,10));
}
----------------------------------------------
抽出部分 存入 a_x.h :
double mean(double *y, int N){
int i;
double s=0.0;
for (i=0;i<N;i++) s=s+y[i];
s = s / (double) N;
return s;
}
--------------------------------
程序变:
#include<stdio.h>
#include "a_x.h"
void main()
{
double x[10]={1,2,3,4,5,6,7,8,9,10};
printf("mean = %lf\n", mean(x,10));
}
=============================================
你要是愿意随便抽一块也可以,例如抽出(也叫 a_x.h):
double mean(double *y, int N){
int i;
double s=0.0;
for (i=0;i<N;i++) s=s+y[i];
s = s / (double) N;
return s;
}
void main()
{
------------------------
程序变:
#include<stdio.h>
#include "a_x.h"
double x[10]={1,2,3,4,5,6,7,8,9,10};
printf("mean = %lf\n", mean(x,10));
}
==============================
语法上,功能上,两种抽法都可以 。但第一种方法较好--程序可读性好,不易出错 。