Chinaunix首页 | 论坛 | 博客
  • 博客访问: 118173
  • 博文数量: 16
  • 博客积分: 1464
  • 博客等级: 上尉
  • 技术积分: 221
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-15 21:35
文章分类

全部博文(16)

文章存档

2011年(3)

2010年(7)

2009年(2)

2008年(1)

2006年(3)

我的朋友

分类: C/C++

2006-12-20 16:05:39

最近在看The art and science of C Eric S.Roberts,在此之前,我浏览过别人推荐的一本名书The program of C,但是我感觉这本书是那本书的续集,

在以前我只知道一些简单的c语言程序,就是什么有关计算排序什么的,但是就是无法把它跟现实生活中的图形程序连接起来,我感觉这就是个槛,反正我是这样,看完唐国强的c程序设计,也就是了解了些基本的语法,和基本的数据类型,要进一步深入我当时就不知道在干嘛好,因为我的迷茫导致我大三那年就没有继续看下去关于c语言编程的东西,转去看了看shell,

今天我看的接口让我感觉到了有点深入,让我明白了,程序的团体结构,下面我就说说我对接口的理解,其实说明白了,接口就是一个提供给给我们的头文件(当然这样说是为了更好的理解),打个比方,我们编写程序的时候通常要包含许多头文件,因为我门要用到很普通的函数,这些都是库函数,print(),getchar(), 等。但是有些功能无法达到自己的目的,自己就需要编写函数去实现,但是对于一类问题,就需要一类函数去实现,这样为了避免重复编写函数,就可以定义一个接口,在接口文件里面注释是占很大一部分的。

下面是接口的定义格式,

一个完整的接口 是由两个文件组成的,一个是name.h一个是name.c

name.h如下:

#ifndef _name_h(这里设计到一些条件编译的知识)

#define _name_h

任何所需的 #iinclude

接口项

#endif

其中name是库的名字,第三行的#include是需要其他库时才用的(一定要注意这个地方)。

       name.c如下

在这个文件里面就包含自己接口中的各个函数。

下面就是一个普通原始的接口文件产生随机数,它包含两个部分可以和上面我所说的对照起来理解,希望我写的这些能帮助在我这个阶段的兄弟门。

/*

 *file :random.h

*this file contains a preliminary version of a library

*interface to produce pseudo_random numbers.

*/

#ifndef _random_h

#define _random_h

/*function :RandomoIteger

*usage::n=RandomInteger(low,high);

*this function returns a random interger in the range

*low to high , inclusive.

*/

Int RandomInteger(int low,int high);

#endif

/*

*File:random.c

*this file implements the preliminary random.h interface.

*

*/

#include

#include

#include”genlib.h”

#include”random.h”

/*

*function :RandomInterger

*this function first obtains a random interger in

*the range [0…RAND_MAX]by applying four steps:

*(1)Generate a real number between 0 and 1.

*(2)Scale it to the appropriate range size

*(3)Truncate the value to an interger

*(4)Translate it to the appropriate starting point.

int RandomInterger(int low,int high)

{

       int k;

       double d;

       d=(double)rand()/((double)RAND_MAX+1);

       k=(int)(d*(high-low+1));

       return(low+k);

}

比如在去随机数的时候一般都会调用rand,但是有些时候一些问题不好解决,扔硬币正反用01表示,但是这只有两种可能性,再如扔骰子只有六种肯能性,所以说接口就是对一类问题的方案。我是个初学者,高手看了此文章可能觉得没有什么。对于初学者每进一步我感觉都很难。

阅读(3061) | 评论(0) | 转发(0) |
0

上一篇:linux

下一篇:调用约定

给主人留下些什么吧!~~