• 首页>范文 > 范文
  • c语言头文件怎么写

    1.c语言头文件怎么写呀

    C++/C程序的头文件以“.h”为后缀。

    以下是假设名称为graphics.h的头文件: #ifndef GRAPHICS_H//作用:防止graphics.h被重复引用 #define GRAPHICS_H #include<。.>;//引用标准库的头文件 。

    #include"。"//引用非标准库的头文件 。

    void Function1(。);//全局函数声明 。

    inline();//inline函数的定义 。 classBox//作用:类结构声明 { 。

    }; #endif 从以上例子可以看出,头文件一般由四部分内容组成: (1)头文件开头处的版权和版本声明; (2)预处理块; (3)inline函数的定义; (4)函数和类结构声明等。 在头文件中,用ifndef/define/endif结构产生预处理块,用#include格式来引用库的头文件。

    头文件的这种结构,是利用C语言进行开发软件所通常具备的,属于公有知识。 传统 C++: 扩展资料:c语言头文件的作用: 1、头文件可以定义所用的函数列表,方便查阅你可以调用的函数; 2、头文件可以定义很多宏定义,就是一些全局静态变量的定义,在这样的情况下,只要修改头文件的内容,程序就可以做相应的修改,不用亲自跑到繁琐的代码内去搜索。

    3、头文件只是声明,不占内存空间,要知道其执行过程,要看你头文件所申明的函数是在哪个.c文件里定义的,才知道。 4、他并不是C自带的,可以不用。

    5、调用了头文件,就等于赋予了调用某些函数的权限,如果你要算一个数的N次方,就要调用Pow()函数,而这个函数是定义在math.c里面的,要用这个函数,就必需调用math.h这个头文件。 参考资料: 百度百科——头文件。

    2.C语言定义一个头文件的格式和引用它的方法

    扩展名为.h的文件,在C语言中被称为header file, 也就是头文件。

    头文件的数据格式就是普通的文本文件,可以通过新建文本文件(txt),再把扩展名改为.h的方式创建,在此不赘述。

    一、头文件内容格式。

    头文件内容并没有固定的格式要求,不过一般为防止嵌套引用给编译器带来死锁或者没必要的开销,一般约定整个头文件中所有内容在一个条件编译下,即如下格式:

    #ifndef 宏名

    #define 宏名

    //头文件主体

    #endif

    这样可以保证一个头文件在一个源文件中最多只被引用一次。为避免宏名重复,宏名一般由头文件名转换而来,如果头文件名是xxx.h,那么宏名一般定义为:

    _XXX_H_

    即前后各加一个下划线,同时文件名中除数字、字母、下划线以外的字符均转换为下划线(_)。

    头文件主体中内容同样没有做强制约定,可以出现在源文件(.c)中的任何代码均可以放在头文件中。不过一般情况下可以包括以下几种内容:

    1 引用其它头文件,格式为

    #include <xxx.h>

    #include "xxx.h"

    二者区别在介绍头文件引用时再详细介绍。

    2 定义私有类型。比如

    typedef unsigned long U32; //为了简写而给无符号32位整型定义一个新的名字

    struct xxx {};

    也可以是enum, union等复杂类型。

    3 宏定义。比如

    #define MAX(a,b) (a>b?a:b)

    4 函数声明。比如

    void test_function(void);

    5 全局变量声明。比如

    extern int global_var;

    6 如果有一个静态全局变量需要在不同源文件中使用,但各文件之间互不相关。那么可以放在头文件中。如:

    static int gs_var = 3;

    7 对于支持C99规范的C编译器,还可以把内联函数定义在头文件中。比如

    static inline int get_min(int a, int b)

    {

    if(a>b) return b;

    return a;

    }以上是常见的头文件中的元素。但实际上头文件中也可以放全局变量的定义,全局函数的实现等。但是头文件中一旦定义了这样的元素,这个头文件在一个工程中只能被一个文件引用,否则编译器会报重复定义的错误。

    比如如果有一个规模很大的常量数组,比如一副图片的二进制值,如果把它定义在源文件中,就会显得很冗余,因为并不会经常修改。 这时可以定义在头文件中,只在一个源文件中引用,当有多幅图片需要随时更换时,也可以通过简单的在源文件中修改引用的头文件名达到修改的目的。

    二、头文件的引用。

    头文件引用的方法其实之前已经大致说过了,在源文件中引用头文件和在头文件中引用的格式是一样的:

    #include<xxx.h>;或者

    #include "xxx.h"

    xxx为头文件名。

    用<>;和""是有一定的区别的。在编译器查找头文件的时候,会在两个区域分别查找。

    一个是系统头文件区域,即类似于stdio.h一类的C库函数头文件区。

    另一个是自定义头文件区,比如当前目录,以及其它自定义的目录。

    用<>;时,编译器会先在系统区域查找,然后再查找自定义区域。而用""时则相反。

    由于一般并不推荐自定义头文件名与系统头文件名相同(容易引起歧义并难以维护),所以先后顺序并不是太重要,尤其在硬件速度越来越快的今天,使用哪种符号引用头文件已经差别很小了。

    3.c语言头文件怎么写~

    简单办法,先写完整程序,再把一部分抽出去,抽出去的存到 自己的头文件里,在抽出的地方写 #include 。

    例如,完整程序(计算平均值):

    #include

    double mean(double *y, int N){

    int i;

    double s=0.0;

    for (i=0;is = s / (double) N;

    return s;

    }

    void main()

    {

    double x[10]={1,2,3,4,5,6,7,8,9,10};

    printf("mean = %lfn", mean(x,10));

    }

    ----------------------------------------------

    抽出部分 存入 a_x.h :

    double mean(double *y, int N){

    int i;

    double s=0.0;

    for (i=0;is = s / (double) N;

    return s;

    }

    --------------------------------

    程序变:

    #include

    #include "a_x.h"

    void main()

    {

    double x[10]={1,2,3,4,5,6,7,8,9,10};

    printf("mean = %lfn", mean(x,10));

    }

    =============================================

    你要是愿意随便抽一块也可以,例如抽出(也叫 a_x.h):

    double mean(double *y, int N){

    int i;

    double s=0.0;

    for (i=0;is = s / (double) N;

    return s;

    }

    void main()

    {

    ------------------------

    程序变:

    #include

    #include "a_x.h"

    double x[10]={1,2,3,4,5,6,7,8,9,10};

    printf("mean = %lfn", mean(x,10));

    }

    ==============================

    语法上,功能上,两种抽法都可以。但第一种方法较好--程序可读性好,不易出错。

    一般情况下,头文件里放 函数原型,全局量声明 和 函数定义。

    4.我想自己写c语言的头文件,应该怎么写

    c语言的头文件写什么都可以,它相当于一个嵌入块,把头文件中的内容嵌入到程序中写

    #include 我的头文件

    的地点。

    换句话说,相当于你把程序头部的一块东西(整块,半块,一大块,一小块都可以)抽出来,放到另一个叫头文件的东西里。编译时由编译器嵌入。

    头文件的内容正如你说,就那些。

    函数原形声明写不写在头部的原则是,如果函数定义内容块,出现在main块之后,或函数定义内容块在另外一个文件里,则要写原形声明。如果函数定义内容块在main块之前,则不写。

    自己写头文件有这几种情况: (1) 想让自己的程序看上去简洁,把较长的那些声明定义抽出来,放到单独的头文件里。(2)程序由多个文件组成,把各文件共用的声明定义抽出来放到单独的头文件里。(3)自己自创的某些专用程序,某些数据结构定义,打算放到不同的编程项目中使用。(4)自己自创的程序库,某些数据结构定义,打算给别人用,给别人提供.obj 和 .h 文件.

    自己写头文件,可以写一个,也可写多个,没有限制。

    丙头文件嵌甲乙头文件也可以,完全根据需要。

    5.C语言如何写头文件

    #ifndef MYHEADFILE#define MYHEADFILEvoid InitInterpolation();void Draw_Border();void Draw_Background();void Draw_Gray();#endif#include "test.h"同项目中其他各个文件需要使用这些函数时只需要下面这样一句:#include "test.h"千万不要包含.c文件,会出现重复定义问题。

    6.求C语言高手 C语言怎么写头文件

    一个.h文件要 对应有一个.c文件,这样写助于查看和修改程序。

    比如a.h 和 a.c;:在.h文件中#ifndef __A_H_#define __A_H_#include void trans2(double B) ;double trans1() ;#endif 在.c文件中#include "a.h"把相应的函数定义写在.c文件中再在main.c文件中#include "a.h"#includemain(){double trans1() //由度分秒到弧度{double B1,B11,B12,B13,B111;scanf("%lf°%lf′%lf″",&B11,&B12,&B13);B111=fabs(B11); //B11可能为负值B1=B111+B12/60.0+B13/3600.0;B1=B1*atan(1)/45.0;if(B11<0)B1=-B1;return B1;}void trans2(double B) //由弧度到度分秒并输出角度值{int a,b;double B0;B0=fabs(B); //B可能为负值double c;B0=B0*45.0/atan(1);a=int(B0);b=int((B0-a)*60);c=(B0-a)*3600-b*60;if((int)(c)==60) //为了避免出现59′60″这种情况,不过好像不起作用,不知道为什么,原来是int没有加括号{b=b+1;c=0.0;}if(b==60){b=0;a=a+1;}if(B<0)a=-a;printf("%d°%d′%.4f″n",a,b,c);}}就可以在main.c函数中调用a.c中的函数了很好理解吧 希望对你有帮助。

    7.C语言如何写头文件

    #ifndef MYHEADFILE

    #define MYHEADFILE

    void InitInterpolation();

    void Draw_Border();

    void Draw_Background();

    void Draw_Gray();

    #endif

    #include "test.h"

    同项目中其他各个文件需要使用这些函数时只需要下面这样一句:

    #include "test.h"

    千万不要包含.c文件,会出现重复定义问题

    8.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 = %lfn", 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 = %lfn", 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 = %lfn", mean(x,10));

    }

    ==============================

    语法上,功能上,两种抽法都可以。但第一种方法较好--程序可读性好,不易出错。

    一般情况下,头文件里放 函数原型,全局量声明 和 函数定义。

    9.C语言自己编写头文件

    分成两个文件写,一个在头文件中写,第二个在.C文件中写。

    头文件中声明函数,然后在。C文件中写函数体 如定义两个文件a.h和a.c在文件a.c中书写一下代码void a (int b,int c){int b,c,t;t=b;b=c;c=t;//这里交换两个数,其他要做什么代码自己写}在a.h中写入如下代码void a(int b,int c)这样就写好了,然后你要是想调用就直接在你要调用的文件开头写入#include “a.h”这样就可以了,当然头文件中还有防止重复包含,条件编译等一些代码,这里我就不详细说了。

    c语言头文件怎么写

    发表评论

    登录后才能评论