大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
chdir()改变当前目录的函数
创新互联公司专注于通化企业网站建设,响应式网站设计,商城网站制作。通化网站建设公司,为通化等地区提供建站服务。全流程定制设计,专业设计,全程项目跟踪,创新互联公司专业和态度为您提供的服务
原形:int chdir(const char *path)
功能:把由path指定的目录改为当前目录。path参数中可以指定驱动器号,如“a:\\ddd”, 但只是改变该驱动器上的当前目录,对当前活动驱动器上的当前目录无影响。
返回值:0(成功);-1(失败)
头文件:dir.h
=======================================================================================
findfirst()函数和findnext()函数
调用方式:整形数=findfirst(文件名,结构变量名,属性常数组合(如0x26));其中定义struct ffblk 结构变量名;
原形:int findfirst(path,buffer,attr)和int findnext(buffer)
char *path;//要检索的文件名
struct ffblk
{
char ff_reserved[21];
char ff_attrib;//被检索的文件属性
unsigned ff_ftime;//最后修改的时间
//(0-4位:秒数/2;5-10位:分数;11-15位:小时数)
unsigned ff_fdate;//最后修改的日期
//(0-4位:日;5-8位:月;9-15位:年减1980)
long ff_fsize;//文件大小
char ff_name[13];//组名
}*buffer;
int attr;//要检索的文件属性
功能:检索由path和attr指定的文件,把结果返回到buffer。findfirst返回关于第一个指定文件的信息,findnext继续检索。
返回值:0(检索成功),-1(没有找到指定的文件)
属性常数:
FA_NORMAL(0x00) 含意:Normal file, no attributes
FA_RDONLY(0x01) 含意:只读
FA_HIDDEN(0x02) 含意:隐含文件
FA_SYSTEM(0x04) 含意:系统文件
FA_LABEL(0x08) 含意:卷标
FA_DIREC(0x10) 含意:子目录
FA_ARCH(0x20) 含意:修改的文件Archive
头文件:dir.h(dos.h)
====================================================================================
fnmerge()建立文件路径函数
原形:void fnmerge(char *path,const char *drive,const char *dir, const char *name,const char *ext)
功能:合成drive:\dir\name.ext,放在path
头文件:dir.h
fnsplit()分解完整的路径名函数
原形:int fnsplit(char *path,const char *drive,const char *dir,const char *name,const char *ext)
功能:把文件名路径path分成4个部分存放。
其中drive中有冒号;dir中有开始和结尾的反斜杠;ext包括开始圆点
返回值:如果有扩展名,则 返回值EXTENSION!=0
如果有文件名,则 返回值FILENAME!=0
如果有目录名,则 返回值DIRECTORY!=0
如果有驱动器号,则返回值DIRVE!=0
头文件:dir.h
====================================================================================
getcurdir()读取指定驱动器的当前目录的函数
原形:int getcurdir(int drive,char directory)
drive=0(缺省);1(A驱动器);...
directory用来存放目录名,不包括驱动器名,不以反斜杠开始。
返回值:0(调用成功);1(出错)
头文件:dir.h
getcwd()读取当前目录的函数
原形:char *getcwd(char *buf,int buflen)
功能:读取当前目录的完整路径名(包括驱动器名),最长为buflen个字节,存放在buf中。如果buf为NULL,函数将分配一个buflen字节长的缓冲区,以后可将本函数的返回值作为free函数的参数来释放该缓冲区。
返回值:若buf非空,调用成功返回buf,出错返回NULL;若buf为NULL,返回指向已经分配的内存缓冲区地址。
头文件:dir.h
getdisk()读取当前磁盘驱动器号函数
原形:int getdisk(void)
功能:取得当前驱动器号(0=A;1=B;....)
头文件:dir.h
======================================================================================
mkdir()创建目录函数
原形:int mkdir(const char *path)
功能:按给定的路径建立一个新的目录
头文件:dir.h
返回值:0(成功);-1(失败)
mktemp()建立一个唯一的文件名的函数
原形:char *mktemp(char *template)
功能:使用一个唯一的文件名来替换字符串template,并返回template。
头文件:dir.h
======================================================================================
rmdir()删除目录函数
原形:int rmdir(const char *path)
注意:删除的目录不能是当前目录,不是根目录,是空目录
返回值:0(成功);-1(操作出错)
头文件:dir.h
searchpath()按dos路径查找一个文件的函数
原形:char *searchpath(const char *file)
用法:p=searchpath("文件名"); 先定义char *p;
功能:搜索dos路径(环境变量中的path=....)来定位由file给出的文件。
返回值:指向完整路径名字符串的指针。定位失败返回NULL。
头文件:dir.h
segread()读段寄存器函数
原形:void segread(struct SREGS *segp)
作用:把当前寄存器的值保存到SREGS型机构变量segp中。
segs.cs=代码段寄存器的值;
segs.ds=数据段寄存器的值;
segs.es=附加段寄存器的值;
segs.ss=堆栈段寄存器的值;
setdisk()设置当前驱动器的函数
原形:int setdisk(int drive)
功能:把由drive指定的驱动器修改成当前驱动器,返回可使用的驱动器数。
头文件:dir.h
settextstyle()显示字符的当前设置函数
功能:设置当前输出英文字符的字体、大小和方向。
调用方式:
void far settextstyle(int font,int direction,int charsize)
其中①参数font确定所选定的字体形状,
DEFAULT_FONT 或0 是8×8位图字体
TRIPLEX_FONT 或1 是三重矢量字体
SMALL_FONT 或2 是小号矢量字体
SANS_SERIF_FONT或3 是无衬线矢量字体
GOTHIC_FONT 或4 是哥特矢量字体
②参数durection字符的显示方向,
HORIZ_DIR 或0 是水平方向
VERT_DIR 或1 是垂直方向
③参数charsize表示字符放大的倍数,其值为0到10。
setvect()设置中断向量函数
setvect(int 中断号,void interrupt(*中断函数名))
功能:把中断服务程序的地址装入中断向量表中。
调用方法:setvect(中断号,中断函数名即地址);
(1)得预先定义要代替原函数的新函数
void interrupt 中断函数名(void)
{......}
(2)得先保留原中断函数地址
void interrupt (*保留函数名)(void);
保留函数名=getvect(中断号);
(3)事后得将原中断函数地址装回向量表中
setvect(中断号,保留函数名);
setviewport()建立视口的函数
原形: void far setviewport(int left,int top,int right,int bottom,int clip)
功能:用左上角坐标left,top和右下角坐标right,bottom建立一个视口,如果clip为1,则超出视口的输出自动被剪裁掉;如果clip为0,则不被剪裁。
例:setviewport(0,0,100,100,1)建立对角线为0,0和100,100的视口,并带有剪裁功能。
注:要清除当前视口,用函数clearnviewport()。
是51单片机吗? 如果是51单片机,你可以使用TMOD设置两个定时器,然后使用TR0、TR1分别启动两个定时器。PT0置为“1”,就可以中断定时器1的服务函数,相反,如果PT1置为“1”就可以中断定时器0的服务函数。 如果不设置PT的值,默认为“0”,这样的话,T0和T1谁也不能中断谁。
使用c++编译器,就要求中断函数的形参用...填充。非c++编译器就不用形参。这个不用深追究为什么,只要这样用就可以了。
C语言的常用库函数
函数1。absread()读磁盘绝对扇区函数
函数2。abswrite()写磁盘绝对扇区函数
函数3。atof()将字符串转换成浮点数的函数
函数4。atoi()将字符串转换成整型数的函数
函数5。atol()将字符串转换成长整型数的函数
函数6。bcd()把一个数转换成对应的BCD码的函数
函数7。bdos()
函数8。biosdisk()调用BIOS磁盘驱动程序函数
函数9。biosprint()调用BIOS打印机I/O接口的函数
函数10。calloc()分配内存函数
函数11。ceil()
函数12。cgets()读字符串函数
函数13。chdir()改变当前目录的函数
函数14。_chmod()改变文件存取权限的函数
函数15。chmod()改变文件存取权限的函数
函数16。clock()
函数17。close()关闭文件函数
函数18。closegraph()关闭图形函数
函数19。cos()
函数20。ctrlbrk()设置ctrl-break处理程序的函数
函数21。delay()暂停函数
函数22。disable()屏蔽中断的宏
函数23。enable()开硬件中断的宏
函数24。exec()加载并运行其它程序的函数族
函数25。farcalloc()从远堆中分配内存的函数
函数26。farfree()从远堆中释放一块已分配内存的函数
函数27。farmalloc()从远堆中分配内存的函数
函数28。farrealloc()调整远堆中已分配块的函数
函数29。fclose()关闭一个流函数
函数30。fcloseall()关闭打开的流的函数
函数31。feof()检查文件是否结束的函数
函数32。fgets()从流中读取一字符串的函数
函数33。findfirst()函数和findnext()函数
函数34。floodfill()填充区域的函数
函数35。floor()
函数36。fnmerge()建立文件路径函数
函数37。fnsplit()分解完整的路径名函数
函数38。fopen()打开一个流函数
函数39。FP_OFF()获取远地址偏移量的宏
函数40。fprintf()传送输出到一个流中的函数
函数41。FP_SEG()获取远地址段值的宏
函数42。fscanf()格式化输入函数
函数43。fseek()移动文件指针函数
函数44。fwrite()把参数写入流中的函数
函数45。gcvt()把双精度数转化成字符串的函数
函数46。geninterrupt()执行中断函数
函数47。getc()从流中取字符的宏
函数48。getch()从键盘无回显地读取一字符的函数
函数49。getchar()从stdin流中读取一个字符的函数
函数50。getcurdir()读取指定驱动器的当前目录的函数
函数61。getcwd()读取当前目录的函数
函数62。getdate()读取系统日期函数
函数63。getdfree()读取磁盘空闲空间的函数
函数64。getdisk()读取当前磁盘驱动器号函数
函数65。getenv()读取环境变量的当前值的函数
函数66。getimage()将指定区域的位图象存入内存的函数
函数67。getmaxx()返回屏幕上最大的X坐标值的函数
函数68。getmaxy()返回屏幕上最大的Y坐标值的函数
函数69。getpixel()读取像素颜色的函数
函数70。getpsp()
函数71。gets()从标准输入流stdio中读取一字符串的函数
函数72。gettime()读取系统时间的函数
函数73。getvect()读取中断向量函数
函数74。getx()返回当前图形方式下位置的X坐标值的函数
函数75。gety()返回当前图形方式下位置的Y坐标值的函数
函数76。imagesize()返回保存图像缓冲区大小的函数
函数77。initgraph()显示模式控制函数(初始化图形系统函数)
函数78。inport()从端口中读入一个字的函数
函数79。inportb()从端口读入一个字节的函数
函数80。int86()执行中断函数(调用8086软中断函数)
函数81。int86x()执行中断函数 (通用8086软中断接口函数)
函数82。intdos()通用dos中断接口函数
函数83。intdosx()通用dos中断接口函数
函数84。intr()执行8086软中断函数(改变软中断接口函数)
函数85。itoa()把整形数转换为字符串的函数
函数86。kbhit()检查当前按下的键的函数
函数87。keep()驻留并退出函数
函数88。log()
函数89。log10()
函数90。_lrotl()将一个无符号长整形数左循环移位的函数
函数91。_lrotr()将一个无符号长整形数右循环移位的函数
函数92。lseek()移动文件指针函数
函数93。ltoa()把长整形数转换为字符串的函数
函数94。malloc()分配内存函数
函数95。mkdir()创建目录函数
函数96。mktemp()建立一个唯一的文件名的函数
函数97。MK_FP()设置一个远指针的宏
函数98。movedata()拷贝数据函数
函数99。_open()打开一个文件进行读写的函数
函数100。open()打开文件进行读写的函数
函数101。outport()输出一个字到端口中的函数
函数102。outportb()输出一个字节到端口中的函数
函数103。outtextxy()在指定位置显示一字符串的函数
函数104。peek()返回指定内存中字的函数
函数105。peekb()返回指定内存中字节的函数
函数106。poke()在指定的内存中存储一个字的函数
函数107。pokeb()在指定的内存中存储一个字节的函数
函数108。pow()
函数109。printf()写格式化输出到stdout的函数
函数110。putch()向屏幕输出字符的函数
函数111。putchar()在stdout上输出字符的宏
函数112。putenv()将字符串放入当前环境中的函数
函数113。putimage()重新写屏函数(输出一个位图象到图形屏幕上的函数)
函数114。putpixel()写像素点函数
函数115。puts()输出一字符串到stdout(标准输出)的函数
函数116。_read()读文件函数
函数117。read()读文件函数
函数118。realloc()重新分配内存函数
函数119。rectangle()画一个矩形的函数
函数120。remove()删除一个文件的函数
函数121。rename()文件改名函数
函数122。restorecrtmode()恢复屏幕视频模式为调用initgraph前的设置的函数
函数123。rmdir()删除目录函数
函数124。_rotl()将一个无符号整形数左循环移位的函数
函数125。_rotr()将一个无符号整形数右循环移位的函数
函数126。scanf()格式化输入函数
函数127。searchpath()按dos路径查找一个文件的函数
函数128。segread()读段寄存器函数
函数129。setactivepage()设置图形输出活动页的函数
函数130。setcolor()设置当前要画的线颜色的函数
函数131。setdisk()设置当前驱动器的函数
函数132。setgraphmode()将系统设置成图形模式并清屏的函数
函数133。setlinestyle()设置当前画线宽度和类型的函数
函数134。settextstyle()显示字符的当前设置函数
函数135。setvect()设置中断向量函数
函数136。setviewport()建立视口的函数
函数137。setvisualpage()设置可见的图形页号的函数
函数138。sin()
函数139。sprintf()格式化输出到数组的函数
函数140。strcat()
函数141。tan()
函数142。_write()写文件函数
函数143。write()写文件函数
原文释义请到百度文库里搜寻字串“C语言常用函数”后下载
函数51-60因原注里排序号码少编,所以只有133个常用函数。
DOC大小是119.5KB
贡献时间:2010-09-10
贡献者:handanlinzhang
中断向量
:是指中断服务程序入口地址的偏移量与段基值,一个中断向量占据4字节空间。
中断向量表
是8088系统内存中最低端1K字节空间,它的作用就是按照
中断类型号
从小到大的顺序存储对应的中断向量,总共存储256个中断向量。在中断响应过程中,CPU通过从接口电路获取的中断类型号(中断向量号)计算对应中断向量在表中的位置,并从中断向量表中获取中断向量,将程序流程转向中断服务程序的入口地址。
计算机内存
的前1024个字节(偏移量00000H到003FFH)保存着256个中断向量,每个中断向量占4个字节,前两个字节保存着中断服务程序的入口地址偏移量,后两个字节保存着中断程序的入口段地址,使用时,只要将它们分别调入寄存器IP及CS中,就可以转入中断服务程序实现中断调用。每当中断发生时,CPU将中断号乘以4,在中断向量表中得到该中断向量地址,进而获得IP及CS值,从而转到中断服务程序的入口地址,调用中断。这就是中断服务程序通过中断号调用的基本过程。在计算机启动的时候,BIOS将基本的中断填入中断向量表,当DOS得到系统控制权后,它又要将一些中断向量填入表中,还要修改一部分BIOS的中断向量。有一部分中断向量是系统为用户保留的,如60H到67H号中断,用户可以将自己的中断服务程序写入这些中断向量中。不仅如此,用户还可以自己更改和完善系统已有的中断向量。
在C语言中,提供了一种新的函数类型interrupt,专门用来定义中断服务程序,比如我们可以写如下的中断服务程序:
/*例1:中断服务程序*/
void
interrupt
int60()
{
puts(
"This
is
an
example
");
}
一个简单的中断服务程序写好了,如何把它的函数入口地址填写到中断向量表中,以便在产生中断的时候能转入中断服务程序去执行呢?这里要用到setvect()和getvect()函数。setvect()有两个参数:中断号和函数的入口地址,其功能是将指定的函数安装到指定的中断向量中,getvect()函数有一个参数:中断号,
返回值
是该中断的入口地址。在安装中断以前,最好用disable()函数关闭中断,以防止在安装过程中又产生新的中断而导致程序运行混乱,待安装完成后,再用enable()函数开放中断,使程序正常运行。
goto太多了,我水平有限呀,呵呵,不好意思,我只能看个大概。