易截截图软件、单文件、免安装、纯绿色、仅160KB

C程序中头文件相互包含精华(网摘小结)

.h中一般放的是同名.c文件中定义的变量、数组、函数的声明,需要让.c外部使用的声明。
1)h文件作用
1 方便开发:包含一些文件需要的共同的常量,结构,类型定义,函数,变量申明;
2 提供接口:对一个软件包来说可以提供一个给外界的接口(例如: stdio.h)。
 
2)h文件里应该有什么
    常量,结构,类型定义,函数,变量申明。
 
3)h文件不应该有什么
    变量定义, 函数定义。
 
4)extern问题
    对于变量需要extern;
    对于函数不需要因为函数的缺省状态是extern的.如果一个函数要改变为只在文件内可见,加static。
 
5)include包含问题
    虽然申明和类型定义可以重复,不过推荐使用条件编译。
 
#ifndef _FILENAME_H,
 
#define _FILENAME_H
 
……
 
#endif
 
6)应该在那儿包含h文件
    在需要的地方.比如某个提供接口的h文件仅仅被1.c文件需要,那么就在1.c文件里包含。                
 
 
 
编写的程序一般会有.H文件和相对应的.C文件,.H文件是声明所用,.C文件是其函数实现部分。在调用时只要包含.H文件即可,我们没有听说过#include "delay.c"这类的程序,同时也不提倡使用这个形式。
 
          
在delay.h文件中:                //对调用的函数声明
#ifndef __DELAY_H__
 
#define __DELAY_H__
 
 
 
extern void Delayms(unsigned int n);
 
#endif
 
 
 
在delay.c文件中:                 //函数实现部分
 
#include <delay.h>
 
//for crystal 11.0592M
 
void Delayms(unsigned int n)
 
{
 
       unsigned int i,j;
 
       for(j=n;j>0;j--)
 
       for(i=112;i>0;i--);
&


相关文档:

C/C++:程序的内存分配方式 Alvin

1.内存分配方式
  内存分配方式有三种:
  [1]从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。
  [2]在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于 ......

C中的可变参数研究

C中的可变参数研究
一. 何谓可变参数
int
printf( const char* format, ...);
这是使用过C语言的人所再熟悉不过的printf函数原型,它的参数中
就有固定参数format和可变参数(用”…”表示). 而我们又可以用各种方式来调用printf,如:
printf("%d",value);

printf("%s",s ......

linux I2C驱动分析

I2C是Phillips开发的2线的串行总线协议。通常应用在嵌入式系统中让不同的组件通信,PC主板可以通过I2C来与不同的传感器通信。这些传感器通常报告风扇速度,处理器温度和整个硬件系统的信息,这个协议也可以用在RAM chips上,向操作系统提供DIMM的信息。
在2.0时I2C的kernel源码不在内核里的,2.4内核包括了一点对I2C的支持 ......

解析xml org.w3c.dom


1.要解析的XML文件如下:
<?xml version="1.0" encoding="GB2312"?>
<?xml-stylesheet href="student.xsl" type="text/xsl"?>
<StudentInfo>
 <student>
  <name>达内</name>
  <sex>男</sex>
  <lesson>
   ......

C/C++单元测试理论精要(八)

第3章 怎样才能高效率测试
3.1 似是而非的高效率
 
    这一节澄清一些流行的误解或误导,一些看起来很不错的高效率,实际上是似是而非的。
全自动生成用例
    全自动生成用例是所有测试人员的期盼,好消息是,这是一种简单的技术,十年前就有了,坏消息是,这种技术作用很小。
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号