Turbo C 2库函数中文说明大全
C语言TurboC2.0内容介绍
C语言TurboC2.0内容介绍C语言Turbo C 2.0内容介绍C语言是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。
以下是店铺为大家搜索整理的C 语言Turbo C 2.0内容介绍,欢迎大家阅读!Turbo C 2.0有六张低密软盘(或两张高密软盘)。
下面对Turbo C 2.0的主要文件作一简单介绍:INSTALL.EXE 安装程序文件TC.EXE 集成编译TCINST.EXE 集成开发环境的'配置设置程序TCHELP.TCH 帮助文件 读取TCHELP.TCH的驻留程序README 关于Turbo C的信息文件TCCONFIG.EXE 配置文件转换程序MAKE.EXE 项目管理工具TCC.EXE 命令行编译TLINK.EXE Turbo C系列连接器TLIB.EXE Turbo C系列库管理工具C0?.OBJ 不同模式启动代码C?.LIB 不同模式运行库GRAPHICS.LIB 图形库EMU.LIB 8087仿真库FP87.LIB 8087库*.H Turbo C头文件*.BGI 不同显示器图形驱动程序*.C Turbo C例行程序(源文件)其中: 上面的?分别为:T Tiny(微型模式)S Small(小模式)C Compact(紧凑模式)M Medium(中型模式)L Large(大模式)H Huge(巨大模式)1.4 Turbo C2.0的安装和启动Turbo C 2.0的安装非常简单, 只要将1#盘插入A驱动器中, 在DOS的"A>" 下键入:A>INSTALL即可, 此时屏幕上显示三种选择:1. 在硬盘上创造一个新目录来安装整个Turbo C2.0系统。
2. 对Turbo C 1.5更新版本。
这样的安装将保留原来对选择项、颜色和编辑功能键的设置。
3. 为只有两个软盘而无硬盘的系统安装Turbo C 2.0。
Turbo C 2.0内容简介
怎样学习C语言很多人对学习C语言感到无从下手,经常问我同一个问题:究竟怎样学习C 语言?我是一个教师,已经开发了很多年的程序,和很多刚刚起步的人一样,学习的第一个计算机语言就是C语言。
经过这些年的开发,我深深的体会到C语言对于一个程序设计人员多么的重要,如果不懂C语言,你想写底层程序这几乎听起来很可笑,不懂C语言,你想写出优秀高效的程序,这简直就是天方夜谭。
为什么C语言如此重要呢?第一:C语言语法结构很简洁精妙,写出的程序也很高效,很便于描述算法,大多数的程序员愿意使用C语言去描述算法本身,所以,如果你想在程序设计方面有所建树,就必须去学它。
第二:C语言能够让你深入系统底层,你知道的操作系统,哪一个不是C语言写的?所有的windows,Unix,Linux,Mac,os/2,没有一个里外的,如果你不懂C语言,怎么可能深入到这些操作系统当中去呢?更不要说你去写它们的内核程序了。
第三:很多新型的语言都是衍生自C语言,C++,Java,C#,J#,perl...哪个不是呢?掌握了C语言,可以说你就掌握了很多门语言,经过简单的学习,你就可以用这些新型的语言去开发了,这个再一次验证了C语言是程序设计的重要基础。
还有啊,多说一点:即使现在招聘程序员,考试都是考C语言,你想加入it行业,那么就一定要掌握好C语言。
那么究竟怎样学习C语言呢?1:工欲善其事,必先利其器这里介绍几个学习C语言必备的东东:一个开发环境,例如turbo C 2.0,这个曾经占据了DOS时代开发程序的大半个江山。
但是现在windows时代,用turbo C有感觉不方面,编辑程序起来很吃力,并且拖放,更没有函数变量自动感应功能,查询参考资料也不方便。
建议使用V isual C++,这个东西虽然比较大块头,但是一旦安装好了,用起来很方便。
一本学习教程,现在C语言教材多如牛毛,但推荐大家使用《C语言程序设计》谭浩强主编第二版清华大学出版社,此书编写的很适合初学者,并且内容也很精到。
C语言输入输出函数全解
文章1Turbo C2.0标准输入输出函数和文件的输入输出函数。
通过本节的学习可以使读者掌握Turbo C2.0的屏幕输出、键盘输入输出以及磁盘文件的读写函数1.1 标准输入输出函数1.1.1 格式化输入输出函数Turbo C2.0 标准库提供了两个控制台格式化输入、输出函数printf( ) 和scanf(), 这两个函数可以在标准输入输出设备上以各种不同的格式读写数据。
printf()函数用来向标准输出设备(屏幕)写数据; scanf() 函数用来从标准输入设备(键盘)上读数据。
下面详细介绍这两个函数的用法。
一、printf()函数printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。
在编写程序时经常会用到此函数。
printf()函数的调用格式为:printf("<格式化字符串>", <参量表>);其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出; 另一部分是格式化规定字符, 以"%"开始, 后跟一个或几个规定字符,用来确定输出内容格式。
参量表是需要输出的一系列参数, 其个数必须与格式化字符串所说明的输出参数个数一样多, 各参数之间用","分开, 且顺序一一对应, 否则将会出现意想不到的错误。
1. 格式化规定符Turbo C2.0提供的格式化规定符如下:━━━━━━━━━━━━━━━━━━━━━━━━━━符号作用──────────────────────────%d 十进制有符号整数%u 十进制无符号整数%f 浮点数%s 字符串%c 单个字符%p 指针的值%e 指数形式的浮点数%x, %X 无符号以十六进制表示的整数%0 无符号以八进制表示的整数%g 自动选择合适的表示法━━━━━━━━━━━━━━━━━━━━━━━━━━说明:(1). 可以在"%"和字母之间插进数字表示最大场宽。
turboc2.0使用说明
Turbo C 2.0使用简易说明1.Turbo C 2.0无需安装,解压即可使用。
将Turbo C 2.0解压到某文件夹下,各级目录名需符合DOS的命名要求,即不超过8个字符,并不能含有空格。
2.鼠标双击Turbo C 2.0所在目录下的TC.exe打开Turbo C 2.0。
3.按下键盘上“Alt+菜单首字母”即可使光标处于菜单上,可以通过键盘上的四个箭头上下左右选择菜单项。
4.进行环境设置。
选择菜单Options——Directories,修改其中的Include directories、Library directories、Turbo C directory三项的值,使之为Turbo C 2.0及其头文件、库文件所在目录。
5.缺省情况下,C源程序经编译连接生成的同名目标文件(.obj)和同名可执行文件(.exe)与TC.exe存放在同一目录下,用户程序与系统程序存放在同一目录下是不合理的,所以最好在Windows下另建一个文件夹用于存放用户编写的C源程序及目标文件、可执行文件。
并修改菜单Oprions——Directiories中的Output directory的值为用户自建的文件夹名称。
6.选择菜单Options——Save options,覆盖TCCONFIG.TC文件,即保存了环境设置。
此后每次打开Turbo C 2.0时无需再进行环境设置。
7.通过菜单“File”下的子菜单项进行编辑、打开和保存源程序。
8.按下“Ctrl+F9”快捷键可一次完成编译、连接、运行的全过程,若在编译和连接过程中出错,则系统会给出相应提示,用户可按提示修改错误,直至调试通过,可以运行程序。
9.可使用快捷键“Alt+F5”观察运行结果。
例如:1.解压turboc2.rar到E:\turboc2文件夹下。
2.双击E:\turboc2下的文件TC.exe。
3.在Windows下建立文件夹E:\ls。
4.按下“Alt+O”选中Options菜单项,用向下箭头选中其中的Directories子菜单后回车。
Turbo C部分常用库函数
3.字符函数――定义包含于ctype.h头文件
函数原型
功能
例
int isalnum(int ch)
检查ch是否字母或数字。是字母或数字,返回非零值;否则返回0
if (isalnum(ch))printf("ch是字母或是一个数字\n");
附录四Turbo C部分常用库函数
1.输入/输出函数――定义包含于stdio.h头文件
函数原型
功能
例
int fclose(FILE *stream)
关闭与stream相连接的文件,并清除所有与stream相关的缓冲区。
成功返回0,失败返回非0。
fclose(fp);/*fp为文件指针*/
int feof(FILE *stream)
int ispunct(int ch)
检查ch是否标点字符或空格。是,返回非零值;否则返回0
if (ispunct(ch))printf("ch是标点字符\n");
int isspace(int ch)
检查ch是否空格、制表符或换行符。是,返回非零值;否则返回0
if (isspace (ch))printf("ch是空格\n");
ch= getchar();
char *gets(char *str)
将从stdin(键盘)中读取的字符串存放到str指向的字符数组中。
成功返回str,失败返回EOF。
gets(str);
int printf(constchar *format, arg_list)
按format指定的格式把arg_list列表中的值写到stdout(屏幕)。
Turbo C中关于文件操作的说明
printf("Read error"); /*读数错误*/
fclose(fp); /*关闭文件*/
}
rewind()函数用于把文件位置指示器移到文件的起点处,成功时返回0,否
则,返回非0值。
4.如何判断文件结束
int feof(FILE *stream);
feof()函数检测文件位置指示器是否到达了文件结尾,若是则返回一个非0值,否则返回0。这个函数对二进制文件操作特别有用,因为二进制文件中,文件结尾标志EOF也是一个合法的二进制数,只简单的检查读入字符的值来判断文件是否结束是不行的。如果那样的话,可能会造成文件未结尾而被认为结尾,所以就必须有feof()函数。
随着读和写字节数的增大,文件位置指示器也增大,读多少个字节,文件位置指示器相应也跳过多少个字节。读写完毕函数返回所读和所写的字段个数。
ftell()函数返回文件位置指示器的当前值,这个值是指示器从文件头开始算起的字节数,返回的数为长整型数,当返回-1时,表明出现错误。
下面程序把一个浮点数组以二进制方式写入文件test_b.dat中。
fp=fopen("test_b.dat", "rb");/*打开一个二进制文件只读*/
if(fread(dat, sizeof(int), 100, fp)!=100)
/*判断是否读了100个数*/
{
if(feof(fp))
printf("End of file"); /*不到100个数文件结束*/
int i=617; /*定义整型变量并初始化*/
FILE *fp; /*定义文件指针*/
fp=fopne("test.dat", "w"); /*建立一个文字文件只写*/
ucosII中文教程
ucosII中文教程(转1)1.01 INCLUDES.H用户将注意到本书中所有的*.C 文件都包括了以下定义:#include "includes.h"INCLUDE.H 可以使用户不必在工程项目中每个*.C文件中都考虑需要什么样的头文件。
换句话说,INCLUDE.H是主头文件。
这样做唯一的缺点是INCLUDES.H中许多头文件在一些*.C文件的编译中是不需要的。
这意味着逐个编译这些文件要花费额外的时间。
这虽有些不便,但代码的可移植性却增加了。
本书中所有的例子使用一个共同的头文件INCLUDES.H,3个副本分别存放在\SOFTWARE\uCOS-II\EX1_x86L,\ SOFTWARE\uCOS-II\EX2_x86L,以及\SOFTWARE\uCOS-II\EX3_x86L 中。
当然可以重新编辑INCLUDES.H以添加用户自己的头文件。
1.02不依赖于编译的数据类型因为不同的微处理器有不同的字长,µC/OS-II的移植文件包括很多类型定义以确保可移植性(参见\SOFTWARE\uCOS-II\Ix86L\OS_CPU.H,它是针对80x86的实模式,在大模式下编译)。
µCOS-II不使用C语言中的short,int,long等数据类型的定义,因为它们与处理器类型有关,隐含着不可移植性。
笔者代之以移植性强的整数数据类型,这样,既直观又可移植,如表L1.1所示。
为了方便起见,还定义了浮点数数据类型,虽然µC/OS- II中没有使用浮点数。
程序清单L1.1 可移植型数据类型。
Typedef unsigned char BOOLEAN;Typedef unsigned char INT8U;Typedef signed char INT8S;Typedef unsigned int INT16U;Typedef signed int INT16S;Typedef unsigned long INT32U;Typedef signed long INT32S;Typedef float FP32;Typedef double FP64;#define BYTE INT8S#define UBYTE INT8U#define WORD INT16S#define UWORD INT16U#define LONG INT32S#define ULONG INT32U以INT16U数据类型为例,它代表16位无符号整数数据类型。
TurboC2.0使用指南
TurboC2.0使用指南Turbo C 2.0使用指南Turbo C 2.0是Borland公司1987年推出的C语言编译器,具有编译速度快、代码优化效率高等优点,所以在当时深受喜爱。
Turbo C 2.0提供了两种编译环境:一种是类似于UNIX环境的命令行,包含一个TCC编译器和一个MAKE实用程序;一种是集成开发环境,由编辑器、编译器、MAKE实用程序和RUN实用程序,还有一个调试器组成。
在这里,我就向大家简单介绍一下集成环境的使用方法。
Turbo C 2.0基本使用指南(一)进入T c,您可以看到类似下面这样的屏幕。
按F10到菜单,将光标移到Options,打开下拉菜单(或可以按Alt+o打开Options下拉菜单),选择Directories,第一行是include文件目录,是你的TC.EXE,所在的目录,假如你的TC.EXE是在C:\TC20下那么就是c:\tc20\include;同样,第二行是library目录,设成c:\tc20\lib第三行为输出.EXE和.OBJ文件的目录,如果为空则输出到c:\tc20目录下;第四行为Tc的目录,这里设为c:\tc20;第五行是建立PICK文件,默认是TCPICK.TCP,该文件的作用是每次只要键入tc 即可在启动TC时自动加载上次编辑的文件。
完了以后一定要Save Options。
否则下次你还要在设置保存时覆盖原来的就可以了.好了,设置完这些目录以后,您就可以开始进行基本的开发工作了。
Turbo C 2.0基本使用指南(二)现在我们来讲一下各菜单项的功能。
File菜单:File菜单中都是些一般编辑器中常有的功能,如Load、Save等,相信没有必要再讲了,我们就省点口水吧。
Edit菜单:Edit菜单的作用是从菜单切换到编辑栏。
其实大可不必这么麻烦,只要按ESC键就可以了。
Run菜单:Run菜单中的命令用于运行程序。
RUN命令不用讲了,当然是用来运行编译好的程序的啦。
Turbo C 2.0的使用及常见错误
Turbo C 2.0的使用及常见错误Turbo C 2.0 快捷键F1 help 打开帮助F2 save 保存文件F3 load 打开文件F4 go to cursor 运行到光标F5 zoom 缩放窗口F6 switch 窗口间切换F7 trace into 跟踪执行(进入函数)F8 step over 单步跟踪(不进入函数)F9 make 构建文件F10 menu 菜单Alt+F9 编译F9 编译并连接Ctrl+F9 运行Alt+F5: 查看输出Ctrl+F7 Watch查看变量Ctrl+F8 断点Ctrl+F4 查看变量,可改值Ctrl+F3 call stack 调用堆Alt+F3 最近打开的文件Alt+X 退出Ctrl+F2 中止调试设置环境:Options -> DirectoriesInclude directories: Include头文件所在目录Library directories: Lib库文件所在目录Output directory: 临时文件和最终EXE文件输出目录Turbo C directory: TC所在目录不保存备份BAK文件:Options -> Environment -> Backup files = Off 保存设置:Save options。
TCCONFIG.TC=======================================Turbo C 2.0 主要组成文件说明./INCLUDE 头文件所在目录*.H Turbo C头文件./LIB 库文件所在目录C0?.OBJ 不同模式启动代码C?.LIB 不同模式运行库其中: 上面的?分别为:T Tiny(微型模式)S Small(小模式)C Compact(紧凑模式)M Medium(中型模式)L Large(大模式)H Huge(巨大模式)*.C Turbo C例行程序(源文件)*.BGI 不同显示器图形驱动程序INSTALL.EXE 安装程序文件TC.EXE 集成编译TCINST.EXE 集成开发环境的配置设置程序TCHELP.TCH 帮助文件 读取TCHELP.TCH的驻留程序README 关于Turbo C的信息文件TCCONFIG.EXE 配置文件转换程序MAKE.EXE 项目管理工具TCC.EXE 命令行编译TLINK.EXE Turbo C系列连接器TLIB.EXE Turbo C系列库管理工具GRAPHICS.LIB 图形库EMU.LIB 8087仿真库FP87.LIB 8087库=======================================Turbo C 2.0 程序的输入、编译和运行C语言是一种中级语言, 用户用C语言编写的程序称为源程序, 存放用C 语言所写源程序文件名字最后的两个字符一般必须为".c"。
TurboC2.0、BorlandC库函数及用例解读
Turbo C 2.0、Borland C++库函数及用例字母A开头函数函数名: abort功能: 异常终止一个进程用法: void abort(void);程序例:#include#include int main(void){printf("Calling abort()\n");abort();return 0; /* This is never reached */}函数名: abs功能: 求整数的绝对值用法: int abs(int i);程序例:#include#include int main(void){int number = -1234; printf("number:%d absolute value:%d\n",number,abs(number)); return 0;}函数名: absread功能: 绝对磁盘扇区读数据用法: int absread( int drive, int nsects, int sectno,void *buffer );程序例:/* absread example */#include#include#include#include int main(void){int i, strt, ch_out, sector;char buf[512]; printf("Insert diskette into drive A press any key\n");getch();sector = 0;if (absread(0, 1, sector, &buf) != 0){ perror("Disk problem");exit(1); }printf("Read OK\n");strt = 3;for (i=0; i#include#include#include int main(void){ int i, strt, ch_out, sector;char buf[512]; printf("Insert diskette into drive A press any key\n"); getch();sector = 0;if (absread(0, 1, sector, &buf) != 0){ perror("Disk problem");exit(1); }printf("Read OK\n");strt = 3;for (i=0; i#include int file_exists(char *filename);int main(void){ printf("Does NOTEXIST.FIL exist: %s\n",file_exists("NOTEXISTS.FIL") ? "YES" : "NO");return 0;}int file_exists(char *filename){return (access(filename, 0) == 0);}函数名: acos功能: 反余弦函数用法: double acos(double x);程序例:#include#include int main(void){ double result;double x = 0.5;result = acos(x);printf("The arc cosine of %lf is %lf\n", x, result);return 0;}函数名: allocmem功能: 分配DOS存储段用法: int allocmem(unsigned size, unsigned *seg);程序例:#include#include#include int main(void){unsigned int size, segp;int stat;size = 64; /* (64 x 16) = 1024 bytes */stat = allocmem(size, &segp); if (stat == -1)printf("Allocated memory at segment: %x\n", segp);elseprintf("Failed: maximum number of paragraphs available\is %u\n", stat);return 0;}函数名: arc功能: 画一弧线用法: void far arc( int x,int y,int stangle,int endangle,int radius );程序例:#include#include#include#include int main(void){ /* request auto detection */int gdriver = DETECT, gmode, errorcode;int midx, midy; int stangle = 45, endangle = 135;int radius = 100;/* initialize graphics and local variables */initgraph(&gdriver, &gmode, ""); /* read result of initialization */ errorcode = graphresult(); /* an error occurred */if (errorcode != grOk){printf("Graph err: %s\n", grapherrormsg(errorcode));printf("Press any key to halt:");getch();exit(1); /* terminate with an error code */} midx = getmaxx() / 2;midy = getmaxy() / 2;setcolor(getmaxcolor()); /* draw arc */arc(midx, midy, stangle, endangle, radius); /* clean up */getch();closegraph();return 0;}函数名: asctime功能: 转换日期和时间为ASCII码用法: char *asctime(const struct tm *tblock);程序例:#include#include#include int main(void){struct tm t;char str[80]; /* sample loading of tm structure */ t.tm_sec = 1; /* Seconds */t.tm_min = 30; /* Minutes */t.tm_hour = 9; /* Hour */t.tm_mday = 22; /* Day of the Month */t.tm_mon = 11; /* Month */t.tm_year = 56; /* Year - does not include century */ t.tm_wday = 4; /* Day of the week */t.tm_yday = 0; /* Does not show in asctime */t.tm_isdst = 0;/* Is Daylight SavTime; does not show in asctime *//* converts structure to null terminatedstring */ strcpy(str, asctime(&t));printf("%s\n", str);return 0;}函数名: asin功能: 反正弦函数用法: double asin(double x);程序例:#include#include int main(void){ double result;double x = 0.5;result = asin(x);printf("The arc sin of %lf is %lf\n", x, result);return(0);}函数名: assert功能: 测试一个条件并可能使程序终止用法: void assert(int test);程序例:#include#include#include struct ITEM {int key;int value;};/* add item to list, make sure list is not null */void additem(struct ITEM *itemptr) {assert(itemptr != NULL);}int main(void){additem(NULL);return 0;}函数名: atan功能: 反正切函数用法: double atan(double x);程序例:#include#includeint main(void){ double result;double x = 0.5;result = atan(x);printf("The arc tangent of %lf is %lf\n", x, result); return(0);}函数名: atan2功能: 计算Y/X的反正切值用法: double atan2(double y, double x);程序例:#include#include int main(void){ double result;double x = 90.0, y = 45.0;result = atan2(y, x);printf("The arc tangent ratio of %lf is %lf\n\", (y/x),result);return 0;}函数名: atexit功能: 注册终止函数用法: int atexit(atexit_t func);程序例:#include#include void exit_fn1(void){ printf("Exit function #1 called\n");}void exit_fn2(void){ printf("Exit function #2 called\n");}int main(void){/* post exit function #1 */atexit(exit_fn1);/* post exit function #2 */atexit(exit_fn2);return 0;}函数名: atof功能: 把字符串转换成浮点数用法: double atof(const char *nptr);程序例:#include#includeint main(void){ float f;char *str = "12345.67";f = atof(str); printf("string = %s float = %f\n", str, f); return 0;}函数名: atoi功能: 把字符串转换成长整型数用法: int atoi(const char *nptr);程序例:#include#include int main(void){ int n;char *str = "12345.67";n = atoi(str);printf("string = %s integer = %d\n", str, n);return 0;}函数名: atol功能: 把字符串转换成长整型数用法: long atol(const char *nptr);程序例:#include#include int main(void){ long l;char *str = "98765432";l = atol(lstr);printf("string = %s integer = %ld\n", str, l);return(0);}字母B开头函数函数名: bar功能: 画一个二维条形图用法: void far bar(int left,int top,int right,int bottom);程序例:#include#include#include#include int main(void){/* request auto detection */int gdriver = DETECT, gmode, errorcode;int midx, midy, i; /* initialize graphics and local variables */initgraph(&gdriver, &gmode, ""); /* read result of initialization */ errorcode = graphresult();if (errorcode != grOk) /* an error occurred */{printf("Graph err: %s\n", grapherrormsg(errorcode));printf("Press any key to halt:");getch();exit(1); /* terminate with an error code */}midx = getmaxx() / 2;midy = getmaxy() / 2; /* loop through the fill patterns */for (i=SOLID_FILL; i#include#include#include int main(void){ /* request auto detection */int gdriver = DETECT, gmode, errorcode;int midx, midy, i; /* initialize graphics, local variables */initgraph(&gdriver, &gmode, ""); /* read result of initialization */ errorcode = graphresult();if (errorcode != grOk) /* an error occurred */{printf("Graph err: %s\n", grapherrormsg(errorcode));printf("Press any key to halt:");getch();exit(1); /* terminate with error code */} midx = getmaxx() / 2;midy = getmaxy() / 2;/* loop through the fill patterns */for (i=EMPTY_FILL; i#include /* Get current drive as 'A', 'B', ... */char current_drive(void){char curdrive; /* Get current disk as 0, 1, ... */curdrive = bdos(0x19, 0, 0);return('A' + curdrive);}int main(void){printf("The current drive is %c:\n", current_drive());return 0;}函数名: bdosptr功能: DOS系统调用用法: int bdosptr( int dosfun, void *argument,unsigned dosal );程序例:#include#include#include#include#include#include #define BUFLEN 80int main(void){char buffer[BUFLEN];int test; printf("Enter full pathname of a directory\n");gets(buffer); test = bdosptr(0x3B,buffer,0);if(test){ printf("DOS error message: %d\n", errno);/* See errno.h for error listings */exit (1);} getcwd(buffer, BUFLEN);printf("The current directory is: %s\n", buffer); return 0;}函数名: bioscom功能: 串行I/O通信用法: int bioscom(int cmd, char abyte, int port);程序例:#include#include #define COM1 0#define DATA_READY 0x100#define TRUE 1#define FALSE 0#define SETTINGS ( 0x80 | 0x02 | 0x00 | 0x00)int main(void) {int in, out, status, DONE = FALSE; bioscom(0, SETTINGS, COM1);cprintf("... BIOSCOM [ESC] to exit ...\n");while (!DONE){status = bioscom(3, 0, COM1);if (status & DATA_READY)if ((out = bioscom(2, 0, COM1) & 0x7F) != 0)putch(out); if (kbhit()){if ((in = getch()) == '\x1B')DONE = TRUE;bioscom(1, in, COM1);}}return 0;}函数名: biosdisk功能: 软硬盘I/O用法: int biosdisk( int cmd,int drive,int head,int track,int sector,int nsects, void *buffer);程序例:#include#include int main(void){int result;char buffer[512]; printf("Testing to see if drive a: is ready\n");result = biosdisk(4,0,0,0,0,1,buffer);result &= 0x02;(result) ? (printf("Drive A: Ready\n")) :(printf("Drive A: Not Ready\n"));return 0;}函数名: biosequip功能: 检查设备用法: int biosequip(void);程序例:#include#include int main(void){int result;char buffer[512]; printf("Testing to see if drive a: is ready\n");result = biosdisk(4,0,0,0,0,1,buffer);result &= 0x02;(result) ? (printf("Drive A: Ready\n")) :(printf("Drive A: Not Ready\n")); return 0;}函数名: bioskey功能: 直接使用BIOS服务的键盘接口用法: int bioskey(int cmd);程序例:#include#include#include #define RIGHT 0x01#define LEFT 0x02#define CTRL 0x04#define ALT 0x08int main(void){int key, modifiers; /* function 1 returns 0 until a key is pressed */while (bioskey(1) == 0); /* function 0 returns the key that is waiting */ key = bioskey(0); /* use function 2 to determine if shift keys were used */ modifiers = bioskey(2); if (modifiers){printf("[");if (modifiers & RIGHT) printf("RIGHT");if (modifiers & LEFT) printf("LEFT");if (modifiers & CTRL) printf("CTRL");if (modifiers & ALT) printf("ALT");printf("]");}/* print out the character read */if (isalnum(key & 0xFF))printf("'%c'\n", key);else printf("%#02x\n", key);return 0;}函数名: biosmemory功能: 返回存储块大小用法:int biosmemory(void);程序例:#include#includeint main(void){int memory_size;memory_size = biosmemory();/* returns value up to 640K */printf("RAM size = %dK\n",memory_size);return 0;}函数名: biosprint功能: 直接使用BIOS服务的打印机I/O用法: int biosprint(int cmd, int byte, int port);程序例:#include#include#include int main(void){#define STATUS 2 /* printer status command */#define PORTNUM 0 /* port number for LPT1 */ int status, abyte=0; printf("Please turn off your printer.\Press any key to continue\n");getch();status = biosprint(STATUS, abyte, PORTNUM);if (status & 0x01)printf("Device time out.\n");if (status & 0x08)printf("I/O error.\n"); if (status & 0x10)printf("Selected.\n");if (status & 0x20)printf("Out of paper.\n"); if (status & 0x40)printf("Acknowledge.\n");if (status & 0x80)printf("Not busy.\n"); return 0;}函数名: biostime功能: 读取或设置BIOS时间用法: long biostime(int cmd, long newtime);程序例:#include#include#include#include int main(void){long bios_time;clrscr(); cprintf("The number of clock ticks since midnight\is:\r\n");cprintf("The number of seconds since midnight is:\r\n");cprintf("The number of minutes since midnight is:\r\n");cprintf("The number of hours since midnight is:\r\n");cprintf("\r\nPress any key to quit:");while(!kbhit()){bios_time = biostime(0, 0L); gotoxy(50, 1);cprintf("%lu", bios_time); gotoxy(50, 2);cprintf("%.4f", bios_time / CLK_TCK); gotoxy(50, 3);cprintf("%.4f", bios_time / CLK_TCK / 60); gotoxy(50, 4);cprintf("%.4f", bios_time / CLK_TCK / 3600);}return 0;}函数名: brk功能: 改变数据段空间分配用法: int brk(void *endds);程序例:#include#include int main(void){char *ptr; printf("Changing allocation with brk()\n");ptr = malloc(1); printf("Before brk() call:%lu bytes free\n",coreleft()); brk(ptr+1000);printf(" After brk() call:%lu bytes free\n",coreleft());}函数名: bsearch功能: 二分法搜索用法: void *bsearch( const void *key, const void *base,size_t *nelem, size_t width,int(*fcmp)(const void *, const *));程序例:#include#include#define NELEMS(arr) (sizeof(arr) / sizeof(arr[0]))int numarray[] = {123, 145, 512, 627, 800, 933};int numeric (const int *p1, const int *p2){return(*p1 - *p2);}int lookup(int key){int *itemptr; /* The cast of (int(*)(const void *,const void*))is needed to avoid a type mismatch error atcompile time */itemptr = bsearch (&key, numarray, NELEMS(numarray),sizeof(int), (int(*)(const void *,const void *))numeric);return (itemptr != NULL);}int main(void){if (lookup(512))printf("512 is in the table.\n");elseprintf("512 isn't in the table.\n"); return 0;}字母C开头函数函数名: cabs功能: 计算复数的绝对值用法: double cabs(struct complex z);程序例:#include#includeint main(void){struct complex z;double val;z.x = 2.0;z.y = 1.0;val = cabs(z); printf("The absolute value of %.2lfi %.2lfj is %.2lf\ ", z.x, z.y, val);}函数名: calloc功能: 分配主存储器用法: void *calloc(size_t nelem, size_t elsize);程序例:#include#include int main(void){char *str = NULL;/* allocate memory for string */str = calloc(10, sizeof(char));/* copy "Hello" into string */ strcpy(str, "Hello");/* display string */printf("String is %s\n", str);/* free memory */free(str);return 0;}函数名: ceil功能: 向上舍入用法: double ceil(double x);程序例:#include#include int main(void){double number = 123.54;double down, up; down = floor(number); up = ceil(number); printf("original number %5.2lf\n", number);printf("number rounded down %5.2lf\n", down);printf("number rounded up %5.2lf\n", up); return 0;}函数名: cgets功能: 从控制台读字符串用法: char *cgets(char *str);程序例:#include#include int main(void){char buffer[83];char *p;/* There's space for 80 characters plus the NULL \terminator */ buffer[0] = 81; printf("Input some chars:");p = cgets(buffer);printf("\ncgets read %d characters: \"%s\"\n\", buffer[1], p);printf("The returned pointer is %p, buffer[0] is at %p\n\", p, &buffer);/* Leave room for 5 characters plus the NULL terminator */buffer[0] = 6; printf("Input some chars:");p = cgets(buffer);printf("\ncgets read %d characters: \"%s\"\n\", buffer[1], p); printf("The returned pointer is %p, buffer[0] isat %p\n\", p, &buffer);return 0;}函数名: chdir功能: 改变工作目录用法: int chdir(const char *path);程序例:#include#include#include char old_dir[MAXDIR];char new_dir[MAXDIR];int main(void){if (getcurdir(0, old_dir)){ perror("getcurdir()");exit(1);}printf("Current directory is: \\%s\n", old_dir);if (chdir("\\")){ perror("chdir()");exit(1);}if (getcurdir(0, new_dir)){ perror("getcurdir()");exit(1);} printf("Current directory is now: \\%s\n", new_dir); printf("\nChanging back to orignal directory: \\%s\n\", old_dir);if (chdir(old_dir)){ perror("chdir()");exit(1);}return 0;}函数名: _chmod, chmod功能: 改变文件的访问方式用法: int chmod(const char *filename, int permiss);程序例:#include#include#include void make_read_only(char *filename);int main(void){ make_read_only("NOTEXIST.FIL");make_read_only("MYFILE.FIL"); return 0;}void make_read_only(char *filename){ int stat;stat = chmod(filename, S_IREAD);if (stat)printf("Couldn't make %s read-only\n", filename);elseprintf("Made %s read-only\n", filename);}函数名: chsize功能: 改变文件大小用法: int chsize(int handle, long size);程序例:#include#include#include int main(void){int handle;char buf[11] = "0123456789";/* create text file containing 10 bytes */handle = open("DUMMY.FIL", O_CREAT);write(handle, buf, strlen(buf)); /* truncate the file to 5 bytes in size */ chsize(handle, 5); /* close the file */close(handle);return 0;}函数名: circle功能: 在给定半径以(x, y)为圆心画圆用法: void far circle(int x, int y, int radius);程序例:#include#include#include#include int main(void){/* request auto detection */int gdriver = DETECT, gmode, errorcode; int midx, midy;int radius = 100; /* initialize graphics and local variables */initgraph(&gdriver, &gmode, ""); /* read result of initialization */errorcode = graphresult(); if (errorcode != grOk) /* an error occurred */ {printf("Graphics error: %s\n\", grapherrormsg(errorcode));printf("Press any key to halt:"); getch();exit(1); /* terminate with an error code */}midx = getmaxx() / 2;midy = getmaxy() / 2;setcolor(getmaxcolor()); /* draw the circle */circle(midx, midy, radius); /* clean up */getch();closegraph();return 0;}函数名: cleardevice功能: 清除图形屏幕用法: void far cleardevice(void);程序例:#include#include#include#include int main(void){/* request auto detection */int gdriver = DETECT, gmode, errorcode; int midx, midy; /* initialize graphics and local variables */initgraph(&gdriver, &gmode, ""); /* read result of initialization */errorcode = graphresult(); if (errorcode != grOk) /* an error occurred */{printf("Graphics error: %s\n\", grapherrormsg(errorcode));printf("Press any key to halt:");getch(); exit(1); /* terminate with an error code */}midx = getmaxx() / 2;midy = getmaxy() / 2;setcolor(getmaxcolor()); /* for centering screen messages */settextjustify(CENTER_TEXT, CENTER_TEXT); /* output a message to the screen */ outtextxy(midx,midy,"press any key to clear the screen:"); /* wait for a key */ getch(); /* clear the screen */cleardevice(); /* output another message */outtextxy(midx, midy, "press any key to quit:"); /* clean up */getch();closegraph();return 0;}函数名: clearerr功能: 复位错误标志用法:void clearerr(FILE *stream);程序例:#include int main(void){FILE *fp;char ch; /* open a file for writing */fp = fopen("DUMMY.FIL", "w"); /* force an error condition by attempting to read */ch = fgetc(fp);printf("%c\n",ch); if (ferror(fp)){/* display an error message */printf("Error reading from DUMMY.FIL\n"); /* reset the error and EOF indicators */clearerr(fp);} fclose(fp);return 0;}函数名: clearviewport功能: 清除图形视区用法: void far clearviewport(void);程序例:#include#include#include#include #define CLIP_ON 1 /* activates clipping in viewport */int main(void) { /* request auto detection */int gdriver = DETECT, gmode, errorcode;int ht; /* initialize graphics and local variables */initgraph(&gdriver, &gmode, ""); /* read result of initialization */errorcode = graphresult(); if (errorcode != grOk) /* an error occurred */{printf("Graphics error: %s\n\", grapherrormsg(errorcode)); printf("Press any key to halt:"); getch();exit(1); /* terminate with an error code */} setcolor(getmaxcolor());ht = textheight("W"); /* message in default full-screen viewport */outtextxy(0, 0, "* <-- (0, 0) in default viewport"); /* create a smaller viewport */setviewport(50, 50, getmaxx()-50, getmaxy()-50, CLIP_ON);/* display some messages */outtextxy(0, 0, "* <-- (0, 0) in smaller viewport");outtextxy(0, 2*ht, "Press any key to clear viewport:"); /* wait for a key */ getch(); /* clear the viewport */clearviewport(); /* output another message */outtextxy(0, 0, "Press any key to quit:"); /* clean up */ getch();closegraph();return 0;}函数名: _close, close功能: 关闭文件句柄用法: int close(int handle);程序例:#include#include#include#include main(){int handle;char buf[11] = "0123456789"; /* create a file containing 10 bytes */ handle = open("NEW.FIL", O_CREAT);if (handle > -1){write(handle, buf, strlen(buf)); /* close the file */close(handle);}else{printf("Error opening file\n");} return 0;}函数名: clock功能: 确定处理器时间用法: clock_t clock(void);程序例:#include#include#include int main(void){clock_t start, end;start = clock();delay(2000); end = clock();printf("The time was: %f\n", (end - start) / CLK_TCK); return 0;}函数名: closegraph功能: 关闭图形系统用法: void far closegraph(void);程序例:#include#include#include#include int main(void){/* request auto detection */int gdriver = DETECT, gmode, errorcode; int x, y; /* initialize graphics mode */initgraph(&gdriver, &gmode, ""); /* read result of initialization */errorcode = graphresult(); if (errorcode != grOk) /* an erroroccurred */{printf("Graphics error: %s\n\", grapherrormsg(errorcode)); printf("Press any key to halt:"); getch();exit(1); /* terminate with an error code */}x = getmaxx() / 2;y = getmaxy() / 2; /* output a message */settextjustify(CENTER_TEXT, CENTER_TEXT);outtextxy(x, y, "Press a key to close the graphics \system:"); /* wait for a key */getch();/* closes down the graphics system */closegraph(); printf("We're now back in text mode.\n");printf("Press any key to halt:");getch();return 0;}函数名: clreol功能: 在文本窗口中清除字符到行末用法: void clreol(void);程序例:#include int main(void){clrscr();cprintf("The function CLREOL clears all characters from\the\r\n");cprintf("cursor position to the end of the line within\the\r\n"); cprintf("current text window, without moving the cursor.\\r\n");cprintf("Press any key to continue . . .");gotoxy(14, 4);getch();clreol();getch();return 0;}函数名: clrscr功能: 清除文本模式窗口用法: void clrscr(void);程序例:#include int main(void){int i;clrscr();for (i = 0; i < 20; i++)cprintf("%d\r\n", i);cprintf("\r\nPress any key to clear screen");getch(); clrscr();cprintf("The screen has been cleared!");getch();return 0;}函数名: coreleft功能: 返回未使用内存的大小用法: unsigned coreleft(void);程序例:#include#include int main(void){printf("The difference between the highest allocated \block and\n");printf("the top of the heap is: %lu bytes\n\", (unsigned long) coreleft());return 0;}函数名: cos功能: 余弦函数用法: double cos(double x);程序例:#include#include int main(void){double result;double x = 0.5; result = cos(x); printf("The cosine of %lf is %lf\n", x, result); return 0;}函数名: cosh功能: 双曲余弦函数用法: dluble cosh(double x);程序例:#include#include int main(void){double result;double x = 0.5; result = cosh(x); printf("The hyperboic cosine of %lf is %lf\n",x,result);return 0;}函数名: country功能: 返回与国家有关的信息用法: struct COUNTRY *country( int countrycode,struct country *country);程序例:#include#include #define USA 0int main(void){struct COUNTRY country_info; country(USA, &country_info);printf("The currency symbol for the USA is: %s\n",country_info.co_curr);return 0;}函数名: cprintf功能: 送格式化输出至屏幕用法: int cprintf(const char *format[, argument, ...]);程序例:#include int main(void){/* clear the screen */clrscr(); /* create a text window */window(10, 10, 80, 25); /* output some text in the window */cprintf("Hello world\r\n"); /* wait for a key */getch();return 0;}函数名: cputs功能: 写字符到屏幕用法: void cputs(const char *string);程序例:#include int main(void){/* clear the screen */clrscr(); /* create a text window */window(10, 10, 80, 25); /* output some text in the window */cputs("This is within the window\r\n"); /* wait for a key */getch();return 0;}函数名: _creat, creat功能: 创建一个新文件或重写一个已存在的文件用法: int creat (const char *filename, int permiss);程序例:#include#include#include#include int main(void){int handle;char buf[11] = "0123456789"; /* change the default file mode from text to binary */_fmode = O_BINARY; /* create a binary file for reading and writing */handle = creat("DUMMY.FIL", S_IREAD | S_IWRITE); /* write 10 bytes to the file */ write(handle, buf, strlen(buf)); /* close the file */close(handle);return 0;}函数名: creatnew功能: 创建一个新文件用法: int creatnew(const char *filename, int attrib);程序例:#include#include#include#include#include int main(void){int handle; char buf[11] = "0123456789"; /* attempt to create a file that doesn't already exist */handle = creatnew("DUMMY.FIL", 0); if (handle == -1)printf("DUMMY.FIL already exists.\n");else{printf("DUMMY.FIL successfully created.\n");write(handle, buf, strlen(buf));close(handle);} return 0;}函数名: creattemp功能: 创建一个新文件或重写一个已存在的文件用法: int creattemp(const char *filename, int attrib);程序例:#include#include#include int main(void){int handle;char pathname[128];strcpy(pathname, "\\");/* create a unique file in the root directory */handle = creattemp(pathname, 0);printf("%s was the unique file created.\n", pathname);close(handle);return 0;}函数名: cscanf功能: 从控制台执行格式化输入用法: int cscanf(char *format[,argument, ...]);程序例:#include int main(void){char string[80]; /* clear the screen */clrscr();/* Prompt the user for input */cprintf("Enter a string with no spaces:"); /* read the input */ cscanf("%s", string); /* display what was read */cprintf("\r\nThe string entered is: %s", string);return 0;}函数名: ctime功能: 把日期和时间转换为字符串用法: char *ctime(const time_t *time);程序例:#include#include int main(void){time_t t; time(&t);printf("Today's date and time: %s\n", ctime(&t)); return 0;}函数名: ctrlbrk功能: 设置Ctrl-Break处理程序用法: void ctrlbrk(*fptr)(void);程序例:#include#include #define ABORT 0int c_break(void){printf("Control-Break pressed. Program aborting ...\n");return (ABORT);}int main(void){ctrlbrk(c_break);for(;;){ printf("Looping... Press to quit:\n");}return 0;}字母D开头函数函数名: delay。
Turbo C函数大全
T urbo C函数alloc.hbrk【功能】更改数据段空间的分配【原型】int brk(void *endds)【位置】alloc.h【说明】将程序数据段的顶部设置为endds所指向的内存位置。
调用成功之后,返回0。
如果调用失败则返回-1,同时设置errno。
【参见】coreleftcalloc【功能】分配内存。
【原型】void *calloc(size_t nelem,size_t elsize)【位置】stdib.h,alloc.h【说明】为nelem数据项的每elsize个字节分别分配空间,同时在空间中保存0值。
返回一个指向新分配块的指针,如果没有足够的空间则返回NULL。
【参见】malloccoreleft【功能】返回测出的未使用内存量。
【原型】小型模块中unsigend long coreleft(void)【位置】alloc.h【参见】mallocfarcallc【功能】从高端开始分配内存。
【原型】void far *farcalloc(unsigned ling nunits,unsigned ling unitsz)【位置】alloc.h【说明】为nunits数据项的每unitsz个字节分配空间。
返回指向新分配块的指针,如果没有足够的空间创建数据块,则返回NULL【参见】farmalloc,farfree,farcoreleft,malloc,callocfarcoreleft【功能】返回测出的高端未使用内存量。
【原型】unsigned long farcoreleft(void)【位置】alloc.h【说明】返回最高分配数据块和内存末端之间所剩的所有空间量(按照字节计算)。
【参见】farcalloc,farmalloc,coreleftfarfree【功能】从高端释放一个数据块。
【原型】void farfree(void far *block)【位置】alloc【参见】farmalloc,farcallocfarmalloc【功能】从高端开始分配。
Turbo C 2.0使用说明
Turbo C 2.0上机指南Turbo C2.0是Borland 公司为PC 系列微型计算机研制的C 语言程序开发软件包,它集程序编辑、编译、连接、调试、运行于一体,功能齐全,使用方便。
可在Turbo C2.0环境下进行全屏幕编辑,利用窗口功能进行编译、连接,调试、运行、环境设置等工作。
系统文件占用的磁盘空间不大于3M ,对显示器无特殊要求,因此,几乎在所有的微机上都可以使用。
Turbo C2.0是早期微型计算机上最流行的C 语言程序开发软件之一。
1 Turbo C 2.0的安装方法(1)复制Tc2.0系统文件利用Windows 的下拉菜单中的建立文件夹选项命令中的建立子目录命令在硬盘上建立用户自己的子目录,如TC2.0,然后将装有Turbo C2.0的系统盘的全部内容拷贝到用户自己建立的子目录中,这就完成了Turbo C2.0的安装。
然后,需要进行系统环境的设置,详细操作参考第3.3节。
(2)从网络上下载Tc2.0系统软件登录某网站,搜索到Tc2.0软件,下载到本机指定的目录即可。
2 Turbo C2.0的使用方法(1)进入Turbo C2.0集成开发环境如果在Windows 操作系统下已经安装好了Turbo C2.0,则只要双击tc.exe 文件名或者在DOS 的行命令下,执行tc.exe 文件就可进入Turbo C2.0的集成环境,屏幕显示出如图0-1所示的主菜单窗口。
图0-1 Turbo C 2.0用户界面主菜单窗口共分四大部分,屏幕顶端是一个下拉式主菜单,用来选择集成环境的各项主要功能。
除了“编辑(Edit )”以外,主菜单的每一项都对应一个子菜单,主菜单程序编辑区调试信息 显示区功能键 提示区子菜单的各选项对应于一项具体的操作。
第二部分是编辑程序区,用来编辑C语言的源程序。
用户第一次进入Turbo C2.0集成环境,则会在主菜单窗口中显示C语言版本小窗口,在主菜单窗口中按任一键后,可去掉该窗口,以后再次进入Turbo C2.0集成环境时则不会显示了(程序运行的任何时间同时按Shift+F10键均可调出版本信息)。
TurboC函数
================== Turbo C 2.0 函数================== ALLOC.Hbrk 更改数据段空间的分配calloc 分配内存coreleft 返回测出的为使用的内存量farcalloc 从高端开始分配内存farcoreleft 返回测出的高端未使用的内存量farfree 从高端释放一个数据块farmalloc 从高端开始分配farrealloc 调整高端的分配数据块free 释放通过malloc或者calloc分配的数据块malloc 分配内存realloc 重新分配内存sbrk 更改数据段的空间分配ASSERT.Hassert 对条件进行测试,可能会退出程序运行BIOS.Hbioscom RS-232的I/O通讯biosdisk BIOS磁盘服务biosequip 检查设备bioskey 键盘接口biosmemory 返回内存大小biosprint 直接使用BIOS实现打印机I/Obiostime BIOS定时器服务程序CONIO.Hcgets 从控制台读取字符串clreol 清除文本窗口的行尾clrscr 清除文本模式的窗口cprint 在屏幕上的文本窗口中格式化输出cputs 在屏幕上的文本窗口中书写字符串cscanf 从控制台执行格式化输入delline 删除文本窗口中的行getch/getche 从控制台得到字符getpass 读入口令gettext 从文本模式的屏幕上将文本拷贝至内存中gettextinfo 得到文本模式的视频信息gotoxy 在文本窗口中定位光标highvideo 设置高亮度的文本字符insline 在文本窗口的当前光标插入空白行kbhit 检查最近的键盘输入lowvideo 设置低亮度的文本字符movetext 将文本屏幕上一个矩形范围内的文本拷贝到另一个矩形中normvideo 设置正常亮度的字符putch 在屏幕上的文本窗口中输出字符puttext 将内存中的文本拷贝至屏幕上textattr 设置文本窗口函数的文本属性textbackground 设置文本背景颜色textcolor 设置文本字符颜色textmode 更改文本屏幕模式ungetch 将一个字符退回至键盘缓冲wherex 得到当前文本窗口中光标水平位置wherey 得到当前文本窗口中光标垂直位置window 定义激活的文本模式窗口CTYPE.Hisascii 如果为有效的ASCII字符,则返回真isalnum 如果为字母或者字符,则返回真isalpha 如果为字符,则返回真iscntrl 如果为删除字符或者普通的控制字符,则返回真isdigit 如果为数字,则返回真isgraph 除了不包括空格字符之外,其功能与isprint一致islower 如果为小写字母,则返回真isprint 如果为可打印字符,则返回真ispuct 如果为标点符号字符,则返回真isspace 如果为空格、制表符、回车符、换行符、垂直制表符或换页符,返回真isupper 如果为大写字符,返回真isxdigit 如果为十六进制可用字符,返回真toascii 将大于127的ASCII字符转换,保留低7位_tolower 将大写字母转换成小写字母_toupper 将小写字母转换成大写字母DIR.Hchdir 更改当前目录findfirst 搜索磁盘目录findnext 继续执行findfirst搜索fnmerge 使用各个部分组建一个路径fnsplit 将一个路径分解成多个部分getcurdir 得到制定驱动器的当前目录getcwd 得到当前工作目录getdisk 得到当前驱动器mkdir 创建一个目录mktemp 创建一个唯一的文件名rmdir 删除目录searchpath 在DOS路径中检索一个文件setdisk 设置磁盘驱动器DOS.Habsread 读入绝对磁盘扇区abswrite 写入绝对磁盘扇区allocmem 分配DOS内存片断bdos MS-DOS的系统功能调用bdosptr MS-DOS的系统功能调用country 返回与国家区域相关信息ctrbrk 设置控制中断的句柄delay 延时一段时间disable 禁止中断dosexterr 得到DOS扩展错误的信息dostounix 将时间和日期转换成为Unix格式_emit_ 直接在代码中插入文字enable 允许硬件中断FP_OFF 得到远端偏移量地址FP_SEG 得到远端分段地址freemem 释放原先使用allocmem分配的DOS内存块geninterrupt 生成软件中断getcbrk 得到控制中断的设置getcwd 得到当前工作目录getdate 得到MS-DOS日期getdfree 得到磁盘的剩余空间getdta 得到磁盘的转移地址getfat 得到磁盘驱动器的文件分配表信息getfatd 得到文件分配表信息getftime 文件的日期和时间getpsp 得到程序分段的前缀gettime 得到系统时间getvect 得到中断扇区getverify 得到校验状态harderr 建立一个硬件错误句柄hardresume 硬件错误句柄函数inp 从硬件端口读取一个字节inport 从硬件端口读取一个词inportb 从硬件端口读取一个字节int86 常用的8086软件中断int86x 常用的8086软件中断接口intdos 通用的MS-DOS中断接口intdosx 通用的MS-DOS中断接口intr 转换8086软件中断的接口keep 程序退出运行,但继续驻留内存MK_FP 创建一个远端的指针nosound 关闭PC喇叭outp 在硬件端口写一个字节outport 在硬件端口写一个词outportb 在硬件端口写一个字节parsfnm 解析文件名称,然后创建文件控制块peek 返回由segmentv:offset指定内存位置中的词peekb 返回由segmentv:offset指定内存位置中的字节poke 在由segment:offset指定内存位置中保存一个整数值pokeb 存值到一个指定的存储单元randbrd 读取随机数据块randbwr 使用文件控制块随机写入数据块segread 读入段寄存器setblock 改变原先分配的数据块大小setcbrk 设置控制中断setdate 设置MS-DOS日期setdta 设置磁盘转换地址settime 设置系统时间setvect 设置中断向量入口serverify 设置校验状态sleep 程序执行挂起一段时间sound 使PC喇叭按照一定频率发生unixtodos 将UNIX格式的日期和时间转换成DOS格式unlink 删除一个文件FLOA T.H_clear87 清楚浮点状态_control87 改变浮点控制词_fpreset 重新出示欢浮点数学包_status87 得到浮点状态GRAPHICS.Hbar 画出一条栏目bar3d 画出一条3D栏目circle 画出一个圆形cleardevice 清除图形画面clearviewport 清除当前可视区域closegraph 关闭图形系统detectgraph 通过检查硬件确定使用的图形驱动程序和模式drawpoly 画出一个多边形的轮廓ellipse 画出一个椭圆的弧形fillellipse 画出一个填充的椭圆fillpoly 画出一个填充的多边形floodfill 填充一个有界区域范围getarccoords 得到最后一次调用arc的坐标值getaspectratio 得到当前图形模式的纵横比getbkcolor 返回当前背景颜色getcolor 返回当前画笔颜色getdefaultpalette 返回调色板定义结构getdrivername 返回一个指针,指向当前图形驱动程序的名称getfillpattern 将用户定义的填充模式复制到内存中getfillsettings 得到当前填充模式及其颜色的有关信息getgraphmode 返回当前图形模式getimage 将指定区域的位图保存到内存中getlinesettings 得到当前直线样式、模式和粗细getmaxcolor 返回最大颜色值getmaxmode 返回当前驱动程序的最大图形模式号getmaxx 返回画面坐标的最大x值getmaxy 返回画面坐标的最大y值getmodename 返回指向图形模式名称的指针gemoderange 得到指定图形驱动程序的模式范围getpalette 返回调色板表的大小getpixel 得到某个指定象素的颜色gettextsettings 得到当前图形文字字体的有关信息getviewsettings 得到当前视窗的有关信息getx 返回当前位置的x坐标gety 返回当前位置的y坐标graphdefaults 将左右图形设置重置为默认值grapherrormsg 返回一个指针指向错误消息字符串_graphfreemem 用户申请重新分配图形内存_graphgetmem 用户申请分配图形内存graphresult 返回最后一次失败图形操作的错误代码imagesize 返回存储位图所需的字节数initgraph 初始化图形系统installuserdriver 安装设备驱动程序installuserfont 装载一个字体文件line 在两个指定点之间画线linerel 从当前位置画一条指定长度的直线lineto 从当前位置到指定点画一条直线moverel 从当前位置移动一段距离moveto 从当前位置移动到指定点outtext 在图形模式视窗中显示一个字符串outtextxy 向图形模式的指定位置发送一个字符串pieslice 画出扇形区并加以填充putimage 在屏幕上输出一幅位图putpixel 在指定点上画出一个象素rectangle 画出一个矩形registerbgidriver 注册链入的图形驱动程序registerbgifont 注册链入的字体代码restorecrtmode 将屏幕模式恢复到前一次initgraph的设置sector 画出椭圆形的扇形区并加以填充setactivepage 为图形输出设置活动页面setallpalette 将所有调色板的颜色更改为指定颜色setaspectratio 设置图形模式的纵横比setbkcolor 使用调色板设置当前的背景颜色setcolor 设置当前画笔颜色setfillpattern 选择一个用户自定义的填充样式setfillstyle 设置填充模式和颜色setgraphbufsize 改变内部图形缓冲区的大小setgraphmode 系统设置为图形模式,同时清屏setlinestyle 设置线条的样式setpalette 设置调色板颜色setrgbcolor 为VGA和IBM-8514驱动程序设置调色板条目setrgbpalette 为IBM-8514图形卡定义颜色settextjustify 设置图形模式下的文本对齐方式settextstyle 设置当前文本属性setusercharsize 设置用户字体放大因子setviewport 设置图形输出的当前视窗setvisualpage 设置可视图形页码setwritemode 设置图形画线模式textheight 返回一个字符串的高度textwidth 返回一个字符串的宽度IO.Haccess 确定文件是否可以访问_chmod 改变访问模式chmod 更改访问模式chsize 改变文件大小_close 关闭文件句柄close 关闭文件句柄_creat 创建一个新文件或者覆盖一个已经存在的文件creat 创建一个新文件或者覆盖一个已经存在的文件creatnew 创建一个新文件creattemp 在文件名指定的目录中创建一个文件dup 复制一个文件句柄dup2 复制一个文件句柄eof 检查文件结尾标志filelength 得到文件大小的字节数getftime 得到文件的日期和时间ioctl 控制I/O设备isatty 检查设备类型lock 设置文件共享锁定,控制并发的文件访问lseek 移动读/写指针_open 打开文件进行读写open 打开一个文件进行读写_read 从文件中读取read 从文件中读取setftime 设置文件时间setmode 设置一个打开文件的模式sopen 在共享模式下打开文件tell 得到文件指针的当前位置unlink 删除一个文件unlock 释放文件共享的锁定,控制并发访问_write 写入一个文件write 写入一个文件MA TH.Habs 取整数的绝对值acos 求反余弦asin 求反正弦atan 求反正切atan2 求y/x的反正切atof 将一个字符串转换成浮点数cabs 得到一个复数的绝对值ceil 向上取整cos 求余弦cosh 双曲余弦函数exp 计算e的x次方fabs 得到一个浮点数的绝对值floor 向下取整函数fmod 求模运算frexp 将一个双精度数分解成为尾数和指数hypot 计算直角三角形的斜边labs 长整数的绝对值ldexp 计算value乘以2为底的exp次幂得到的数值log 求自然对数值log10 求常用对数值matherr 用户可修改的数学错误处理程序modf 将数字分离成为整数部分和分数部分poly 根据参数生成一个多项式的值pow 幂函数pow10 以10为底的幂函数sin 求正弦sinh 双曲正弦函数sqrt 计算平方根tan 正弦函数tanh 双曲正切函数MEM.Hmemccpy 从src位置拷贝n个字节到destmemchr 在数组s的前面n个字节中查找字符cmemcmp 比较两个长度均为n的字符串memecpy 从src位置拷贝n个字节到destmemicmp 比较s1和s2的前n个字节,忽略大小写差异mememove 从src移动n个字节到destmemset 将s中的n个字节设置为cmovedata 拷贝字节movmem 从src移动一定长度的字节数到destsetmem 将某个内存范围为valuePROCESS.Habort 一场终止某个进程exec 载入并运行另外一个程序execl、execle、execlp、execlpe、execv、execvp、execvpe exit 终止程序spawn 运行其他程序,并在文件运行结束后返回控制权system 执行一个MS-DOS命令SETJMP.Hlongjmp 执行非本地的跳转setjmp 设置非本地跳转SIGNAL.Hraise 向执行程序发送一个信号signal 设置某个信号的句柄STDIO.Hclearerr 重设错误标志fclose 关闭流fcolseall 关闭打开的所有流fdopen 将某个流和某个文件句柄相关联feof(f) 如果流达到文件结尾则返回非0ferror 如果流出现错误则返回非0fflush 清空某个流fgetc 从流中得到字符fgetchar 从stdin中得到一个字符fgetpos 得到文件指针的当前位置fgets 从流中得到一个字符串fileno 返回与流相关联的文件句柄flushall 清空所有打开的流fopen 打开一个流fprintf 向流发送格式化输出fputc 向某个流输出一个字符fputchar 向stdout输出一个字符fputs 向某个流输出一个字符串fread 从某个流读入数据freopen 将一个新文件和某个打开的流相关联fscanf 从某个流执行格式化输入fseek 定位某个流的文件指针fsetpos 定位某个流的文件指针ftell 返回当前文件指针fwrite 写入某个流getc 从某个流中得到某个字符getchar 从stdin得到字符gets 从stdin得到一个字符串getw 从流中得到一个字perror 系统错误消息printf 向stdout发送格式化输出putc 向某个流输出一个字符putchar 向stdout输出字符puts 向stdout输出一个字符串,并添加换行符putw 向某个流输出一个词remove 删除一个文件rename 重命名一个文件rewind 重新将文件指针定位在流的开始位置scanf 执行从stdin的格式化输入setbuf 为某个流分配缓存setvbuf 为某个流分配缓存sprintf 向某个字符串发送格式化输出sscanf 从某个字符串执行格式化输入_strerror 构建一条自定义的错误消息字符串strerror 返回指向错误消息字符串的指针tmpfile 以二进制模式打开一个scratch文件tmpnam 创建一个唯一的文件名ungetc 向输入流退回一个字符unlink 删除一个文件vfprintf 使用参数列表向某个流发送格式化输出vfscanf 使用参数列表从某个流执行格式化输入vprintf 使用参数列表向stdout发送格式化输出vscanf 使用参数列表从stdin执行格式化输入vsprintf 使用参数列表向一个字符串发送格式化输出vsscanf 使用参数列表从一个字符串执行格式化输入STDLIB.Habort 异常终止一个进程abs 求整数的绝对值atexit 注册终止函数atof 把字符串转换成浮点数atoi 把字符串转换成整型数atol 把字符串转换成长整型数bsearch 二分法搜索calloc 分配主存储器div 将两个整数相除, 返回商和余数ecvt 把一个浮点数转换为字符串exit 终止程序fcvt 把一个浮点数转换为字符串free 释放已分配的块gcvt 把浮点数转换成字符串getenv 从环境中取字符串itoa 把一整数转换为字符串labs 取长整型绝对值ldiv 两个长整型数相除, 返回商和余数lfind 执行线性搜索_lrotl 将无符号长整型数向左循环移位_lrotr 将无符号长整型数向右循环移位lsearch 线性搜索ltoa 将一个长整形转换成一个字符串malloc 内存分配函数max 得到两个整数的最大值min 得到两个整数的最小值putenv 把字符串加到当前环境中qsort 使用快速排序例程进行排序rand 随机数发生器0~32767random 随机数发生器0~1randomize 初始化随机数发生器realloc 重新分配主存_rotr 将一个数值向右侧循环srand 初始化随机数产生器strtod 将字符串转换成双精度的浮点数strtol 将字符串转换为长整数strtoul 按照给定的基数将字符串转换成为无符号的长整数swab 交换字节system 执行一个DOS命令ultoa 字符串转换为无符号长整型数STRING.Hmemccpy 从源source中拷贝n个字节到目标destin中memchr 在数组的前n个字节中搜索字符memcmp 比较两个长度均为n的字符串memcpy 从源source中拷贝n个字节到目标destin中memicmp 比较两个串s1和s2的前n个字节, 忽略大小写memmove 移动一块字节memset 设置s中的所有字节为ch, s数组的大小由n给定movedata 拷贝字节movemem 移动一块字节strchr 在一个串中查找给定字符的第一个匹配之处strcmp 串比较strcmpi 串比较, 忽略大小写strncmpi 将一个串中的一部分与另一个串比较, 忽略大小写strcpy 串拷贝strcspn 在串中查找第一个给定字符串内容的段strdup 将串拷贝到新建的位置处_strerror 返回指向错误信息字符串的指针strerror 返回指向错误信息字符串的指针stricmp 串比较, 忽略大小写setmem 将某个内存范围设置为valuestrcat 合并字符串strncmp 比较两个字符串中的最多maxlen个字符strncmpi 把串中的一部分与另一串中的一部分比较, 忽略大小写strncpy 拷贝部分字符strnicmp 比较部分字符,忽略大小写strnset 将字符串的前面部分字符设置为某个特定字符strpbrk 在串中查找给定字符串中的字符strrchr 在串中查找指定字符的最后一个出现strlen 返回字符串的长度strlwr 将字符串转换成小写strncat 合并一个字符的部分到另一个字符串strrev 串倒转strset 将一个串中的所有字符都设为指定字符strspn 在串中查找指定字符串的子集的第一次出现strstr 在串中查找指定字符串的第一次出现strtok 查找由在第二个串中指定的分界符分隔开的单词strupr 将串中的小写字母转换为大写字SYS\STA T.Hfstat 得到打开文件的有关信息stat 得到打开文件的有关信息SYS\TIMEB.Hftime 在timeb结构中保存当前时间TIME.Hasctime 转换日期和时间为ASCII码clock 返回从程序启动到现在的时钟滴答数ctime 把日期和时间转换为字符串difftime 计算两个时刻之间的时间差gmtime 把日期和时间转换为格林尼治标准时间(GMT)localtime 把日期和时间转变为结构stime 设置时间time 得到时间值,返回从1970年1月1日00:00:00到现在的秒数tzset 与UNIX时间相匹配。
turbo c 2.01 菜单项含义
1 主菜单主菜单在Turbo C 2.0主屏幕顶上一行, 显示下列内容:File Edit Run Compile Project Options Debug Break/watch除Edit外, 其它各项均有子菜单, 只要用Alt加上某项中第一个字母(即大写字母), 就可进入该项的子菜单中。
(1)、File(文件)菜单按Alt+F可进入File菜单, 该菜单包括以下内容:.Load(加载)装入一个文件, 可用类似DOS的通配符(如*.C)来进行列表选择。
也可装入其它扩展名的文件, 只要给出文件名(或只给路径)即可。
该项的热键为F3, 即只要在主菜单中按F3即可进入该项, 而不需要先进入File菜单再选此项。
.Pick(选择)将最近装入编辑窗口的8个文件列成一个表让用户选择, 选择后将该程序装入编辑区, 并将光标置在上次修改过的地方。
其热健为Alt-F3。
.New(新文件)说明文件是新的, 缺省文件名为NONAME.C, 存盘时可改名。
.Save(存盘)将编辑区中的文件存盘, 若文件名是NONAME.C时, 将询问是否更改文件名, 其热键为F2。
.Write to(存盘)可由用户给出文件名将编辑区中的文件存盘, 若该文件已存在, 则询问要不要覆盖。
.Directory(目录)显示目录及目录中的文件, 并可由用户选择。
.Change dir(改变目录)显示当前目录, 用户可以改变显示的目录。
.Os shell(暂时退出)暂时退出Turbo C 2.0到DOS提示符下, 此时可以运行DOS 命令, 若想回到Turbo C 2.0中, 只要在DOS状态下键入EXIT即可。
.Quit(退出)退出Turbo C 2.0, 返回到DOS操作系统中, 其热键为Alt+X。
说明:以上各项可用光标键移动色棒进行选择, 回车则执行。
也可用每一项的第一个大写字母直接选择。
若要退到主菜单或从它的下一级菜单列表框退回均可用Esc键, Turbo C 2.0所有菜单均采用这种方法进行操作, 以下不再说明。
Turbo C(V2.0)使用指南
.Write to (存盘)
可由用户给出文件名将编辑区中的文件存盘, 若该文件已存在, 则询问要不要覆盖。
.Directory (目录)
显示目录及目录中的文件, 并可由用户选择。
.Change dir (改变目录)
显示当前目录, 用户可以改变显示的目录。
.Os shell (暂时退出)
在开始看本文以前,我先说明一下C语言的安装和使用中最应该注意的地方:许多网友在下载Turbo C 2.0和Turbo C++ 3.0后,向我问得最多的是在使用过程中碰到如下问题:
1)出现找不到 stdio.h conio.h等include文件;
2)出现cos.obj无法连接之类的错误
这些问题是由于没有设置好路径引起的,目前下载的TC2,TC3按安装分类大概有两种版本:一是通过install安装,这类应该已经设置好了路径;二是直接解压后建立TC.EXE的快捷方式,在WINDOWS下双击即可运行(DOS下直接运行TC.EXE),目前国内大多为这种,因此下载使用前请注意
路径设置:
F1-Help F5-Zoom F6-Switch F7-Trace F8-Step F9-Make F10-Menu
───────────────────────────────
其中顶上一行为Turbo C 2.0 主菜单, 中间窗口为编辑区, 接下来是信息窗口, 最底下一行为参考行。这四个窗口构成了Turbo C 2.0的主屏幕, 以后的编程、编译、调试以及运行都将在这个主屏幕中进行。下面详细介绍主菜单的内容。
在执行一条调用其它用户定义的子函数时, 若用Trace into项, 则执行长条将跟踪到该子函数内部去执行, 其热键为F7。
Turbo C 2.0 函数中文说明大全
int findnext(struct ffblk *ffblk) 取匹配finddirst的文件,成功返回0
void fumerge(char *path,char *drive,char *dir,char *name,char *ext)
此函数通过盘符drive(C:、A:等), 路径dir(\TC、\BC\LIB等), 文件名name(TC、WPS等),扩展名ext(.EXE、.COM等)组成一个文件名存与path中.
double fabs(double x) 返回双精度参数x的绝对值
long labs(long n) 返回长整型参数n的绝对值
double exp(double x) 返回指数函数ex的值
double frexp(double value,int *eptr) 返回value=x*2n中x的值,n存贮在eptr中
double pow10(int p) 返回10p的值
double sqrt(double x) 返回x的开方
double acos(double x) 返回x的反余弦cos-1(x)值,x为弧度
double asin(double x) 返回x的反正弦sin-1(x)值,x为弧度
double atan(double x) 返回x的反正切tan-1(x)值,x为弧度
int ispunct(int ch) 若ch是标点字符(0x00-0x1F)返回非0值,否则返回0
int isspace(int ch) 若ch是空格(' '),水平制表符('\t'),回车符('\r'), 走纸换行('\f'),垂直制表符('\v'),换行符('\n'), 返回非0值,否则返回0
Turbo C常用库函数
附录ⅤTurbo C常用库函数
库函数并不是C语言的一部分,它是由编译程序根据一般用户的需要编制并提供用户使用的一组程序。
每一种C编译系统都提供了一批库函数,不同的编译系统所提供的库函数的数目和函数名以及函数功能是不完全相同的。
ANSIC标准提出了一批建议提供的标准库函数。
它包括了目前多数C编译系统所提供的库函数,但也有一些是某些C编译系统未曾实现的。
考虑到通用性,本书列出Turbo C 2.0版提供的部分常用库函数。
由于Turbo C库函数的种类和数目很多(例如:还有屏幕和图形函数、时间日期函数、与本系统有关的函数等,每一类函数又包括各种功能的函数),限于篇幅,本附录不能全部介绍,只从教学需要的角度列出最基本的。
读者在编制c程序时可能要用到更多的函数,请查阅有关的Turbo C库函数手册。
(1)数学函数
使用数学函数时,应该在源文件中使用命令:
(2)字符函数
在使用字符函数时,因该在源文件中使用命令:
(3)字符串函数
使用字符串中函数时,应该在源文件中使用命令:
(4)输入输出函数
在使用输入输出函数时,应该在源文件中使用命令:
(5)动态存储分配函数
在使用动态存储分配函数时,应该在源文件中使用命令:
(6)其他函数
“其他函数”是C语言的标准库函数,由于不便归入某一类,所以单独列出。
使用这写函数时,应该在源文件中使用命令:。
Turbo_C2.0菜单功能[1]
Turbo C2.0各子菜单的功能1.文件子菜单(File)当选中File子菜单后,在"File"下方将出现一个子窗口,如图所示。
在这个子窗口中,有的条目右边还标出了实现该功能的热键。
所谓"热键",是指为执行菜单中某一固定功能而设置的键。
通过热键来实现某种功能,一般要比通过菜单选择更简单直接,但要求用户熟记这些热键。
例如,为了选择"文件子菜单(File)",除了通过主菜单选择以外,还可以直接用热键Alt+F来选择。
下面简要说明各项的功能:(1)Load:装入一个文件。
当给定的文件名中有文件名通配符(*或?)时,将进行列表选择。
(2)Pick:将最近装入进编辑窗口的8个文件列成表,供用户选择,选择后又装入编辑器,光标置在上次修改过的地方。
若选了"...Load file...",屏幕上将出现"Load File Name"提示框。
(3)New:说明文件是新的,装入编辑器的缺省文件名为NONAME.C。
(4)Save:将编辑器中的内容存盘。
若文件名为NONAME.C,而又要存盘,编辑器会询问是否要改名。
(5)Write to:把编辑器中的内容写入指定的文件中。
若该文件已经存在,则会重写。
(6)Directory:显示目录与所需文件列表(若按回车键则选择当前目录)。
热键F4改变匹配符,选择文件名后,将该文件装入编辑器。
(7)Change dir:显示当前目录,改变驱动器与目录。
(8)OS Shell:暂时退出Torbo C,转到DOS状态,在DOS状态下用EXIT命令又可返Turbo C时非常有用。
(9)Quit:退出Turbo C,返回到DOS状态。
2.编辑命令(Edit)调用内部编辑。
在编辑器中按F10可回主菜单(或用Alt加所需主菜单命令的首字母),但此时编辑器中的内容仍保持在屏幕上。
在主菜单中按Esc或E键即可回到编辑器(按Alt+E也可,且在任何时候都起作用)。
C语言标准库函数大全
Page 1 of 22
博客园 社区 首页 新随笔 联系 管理 订阅
随笔- 208 文章- 0 评论14
c语言库函数大全--资料收集
Turbo C 2.0 函数中文说明大全
分类函数,所在函数库为ctype.h int isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0 int isalnum(int ch) 若ch是字母('A'-'Z','a'-'z')或数字('0'-'9'),返回非0值, 否则返回0 int isascii(int ch) 若ch是字符(ASCII码中的0-127)返回非0值,否则返回0 int iscntrl(int ch) 若ch是作废字符(0x7F)或普通控制字符(0x00-0x1F),返 回非0值,否则返回0 int isdigit(int ch) 若ch是数字('0'-'9')返回非0值,否则返回0 int isgraph(int ch) 若ch是可打印字符(不含空格)(0x21-0x7E)返回非0值, 否则返回0 int islower(int ch) 若ch是小写字母('a'-'z')返回非0值,否则返回0 int isprint(int ch) 若ch是可打印字符(含空格)(0x20-0x7E)返回非0值,否 则返回0 int ispunct(int ch) 若ch是标点字符(0x00-0x1F)返回非0值,否则返回0 int isspace(int ch) 若ch是空格(' '),水平制表符('\t'),回车符('\r'), 走纸换 行('\f'),垂直制表符('\v'),换行符('\n'), 返回非0值,否则返回0 int isupper(int ch) 若ch是大写字母('A'-'Z')返回非0值,否则返回0 int isxdigit(int ch) 若ch是16进制数('0'-'9','A'-'F','a'-'f')返回非0值, 否则 返回0 int tolower(int ch) 若ch是大写字母('A'-'Z')返回相应的小写字母('a'-'z') int toupper(int ch) 若ch是小写字母('a'-'z')返回相应的大写字母('A'-'Z')
常用的Turbo_C_屏幕窗口和图形函数
常用的Turbo C 屏幕窗口和图形函数1.屏幕窗口和屏幕操作函数使用Turbo C提供的有关屏幕窗口和屏幕操作的函数时,应包含头文件conio.h。
(1) void window (int left,int top, int right, int bottom);该函数在左上角(left, top)和右下角(right, bottom)坐标确定的屏幕位置定义一个字符窗口。
(2) void textbackground (int color);该函数用于设置字符屏幕窗口的背景色。
(3) void textcolor (int color);该函数用于设置字符颜色。
在这两个函数中,颜色color为图形方式下当前调色板中的一种颜色值,对于EGA、VGA显示器,有关颜色的定义见附表1。
附表1 文本方式下有关颜色的定义符号常数数值含义字符或背景BLACK 0 黑两者均可BLUE 1 兰两者均可GREEN 2 绿两者均可CY AN 3 青两者均可RED 4 红两者均可MAGENT A 5 洋红两者均可BROWN 6 棕两者均可LIGHTGRA Y 7 淡灰两者均可DARKGRA Y 8 深灰只用于字符LIGHTBLUE 9 淡兰只用于字符LIGHTGREEN 10 淡绿只用于字符LIGHTCY AN 11 淡青只用于字符LIGHTRED 12 淡红只用于字符LIGHTMAGENT A 13 淡洋红只用于字符YELLOW 14 黄只用于字符WHITE 15 白只用于字符BLINK 128 闪烁只用于字符(4) void clrscr (void);该函数用于清除当前窗口中的内容,把光标定位在窗口的左上角(1,1)处。
(5) void clreol (void);该函数用于清除当前窗口中从光标位置到行尾的所有字符,光标位置不变。
(6) void gotoxy (int x , int y);该函数用于将光标移到相对于窗口的坐标(x,y)所指定的位置。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Turbo C 2.0库函数中文说明大全分类函数,所在函数库为ctype.hint isalpha(int ch) 若ch是字母('A'-'Z','a'-'z')返回非0值,否则返回0 int isalnum(int ch) 若ch是字母('A'-'Z','a'-'z')或数字('0'-'9'),返回非0值,否则返回0int isascii(int ch) 若ch是字符(ASCII码中的0-127)返回非0值,否则返回int iscntrl(int ch) 若ch是作废字符(0x7F)或普通控制字符(0x00-0x1F),返回非0值,否则返回0int isdigit(int ch) 若ch是数字('0'-'9')返回非0值,否则返回0int isgraph(int ch) 若ch是可打印字符(不含空格)(0x21-0x7E)返回非0值,否则返回0int islower(int ch) 若ch是小写字母('a'-'z')返回非0值,否则返回0int isprint(int ch) 若ch是可打印字符(含空格)(0x20-0x7E)返回非0值,否则返回0int ispunct(int ch) 若ch是标点字符(0x00-0x1F)返回非0值,否则返回0int isspace(int ch) 若ch是空格(' '),水平制表符('\t'),回车符('\r'), 走纸换行('\f'),垂直制表符('\v'),换行符('\n'), 返回非0值,否则返回0int isupper(int ch) 若ch是大写字母('A'-'Z')返回非0值,否则返回0int isxdigit(int ch) 若ch是16进制数('0'-'9','A'-'F','a'-'f')返回非0值, 否则返回0int tolower(int ch) 若ch是大写字母('A'-'Z')返回相应的小写字母('a'-'z') int toupper(int ch) 若ch是小写字母('a'-'z')返回相应的大写字母('A'-'Z')数学函数,所在函数库为math.h、stdlib.h、string.h、float.hint abs(int i) 返回整型参数i的绝对值double cabs(struct complex znum) 返回复数znum的绝对值double fabs(double x) 返回双精度参数x的绝对值long labs(long n) 返回长整型参数n的绝对值double exp(double x) 返回指数函数ex的值double frexp(double value,int *eptr) 返回value=x*2n中x的值,n存贮在eptr中double ldexp(double value,int exp); 返回value*2exp的值double log(double x) 返回logex的值double log10(double x) 返回log10x的值double pow(double x,double y) 返回xy的值double pow10(int p) 返回10p的值double sqrt(double x) 返回x的开方double acos(double x) 返回x的反余弦cos-1(x)值,x为弧度double asin(double x) 返回x的反正弦sin-1(x)值,x为弧度double atan(double x) 返回x的反正切tan-1(x)值,x为弧度double atan2(double y,double x) 返回y/x的反正切tan-1(x)值,y的x为弧度double cos(double x) 返回x的余弦cos(x)值,x为弧度double sin(double x) 返回x的正弦sin(x)值,x为弧度double tan(double x) 返回x的正切tan(x)值,x为弧度double cosh(double x) 返回x的双曲余弦cosh(x)值,x为弧度double sinh(double x) 返回x的双曲正弦sinh(x)值,x为弧度double tanh(double x) 返回x的双曲正切tanh(x)值,x为弧度double hypot(double x,double y) 返回直角三角形斜边的长度(z), x和y为直角边的长度,z2=x2+y2double ceil(double x) 返回不小于x的最小整数double floor(double x) 返回不大于x的最大整数void srand(unsigned seed) 初始化随机数发生器int rand() 产生一个随机数并返回这个数double poly(double x,int n,double c[]) 从参数产生一个多项式double modf(double value,double *iptr) 将双精度数value分解成尾数和阶double fmod(double x,double y) 返回x/y的余数double frexp(double value,int *eptr) 将双精度数value分成尾数和阶double atof(char *nptr) 将字符串nptr转换成浮点数并返回这个浮点数double atoi(char *nptr) 将字符串nptr转换成整数并返回这个整数double atol(char *nptr) 将字符串nptr转换成长整数并返回这个整数char *ecvt(double value,int ndigit,int *decpt,int *sign)将浮点数value转换成字符串并返回该字符串char *fcvt(double value,int ndigit,int *decpt,int *sign)将浮点数value转换成字符串并返回该字符串char *gcvt(double value,int ndigit,char *buf)将数value转换成字符串并存于buf中,并返回buf的指针char *ultoa(unsigned long value,char *string,int radix)将无符号整型数value转换成字符串并返回该字符串,radix为转换时所用基数char *ltoa(long value,char *string,int radix)将长整型数value转换成字符串并返回该字符串,radix为转换时所用基数char *itoa(int value,char *string,int radix)将整数value转换成字符串存入string,radix为转换时所用基数double atof(char *nptr) 将字符串nptr转换成双精度数,并返回这个数,错误返回0int atoi(char *nptr) 将字符串nptr转换成整型数, 并返回这个数,错误返回0long atol(char *nptr) 将字符串nptr转换成长整型数,并返回这个数,错误返回0double strtod(char *str,char **endptr)将字符串str转换成双精度数,并返回这个数,long strtol(char *str,char **endptr,int base)将字符串str转换成长整型数, 并返回这个数,int matherr(struct exception *e) 用户修改数学错误返回信息函数(没有必要使用)double _matherr(_mexcep why,char *fun,double *arg1p, double*arg2p,double retval)用户修改数学错误返回信息函数(没有必要使用)unsigned int _clear87() 清除浮点状态字并返回原来的浮点状态void _fpreset() 重新初使化浮点数学程序包unsigned int _status87() 返回浮点状态字目录函数,所在函数库为dir.h、dos.hint chdir(char *path) 使指定的目录path(如:"C:\\WPS")变成当前的工作目录,成功返回0int findfirst(char *pathname,struct ffblk *ffblk,int attrib)查找指定的文件,成功返回0pathname为指定的目录名和文件名,如"C:\\WPS\\TXT"ffblk为指定的保存文件信息的一个结构,定义如下:┏━━━━━━━━━━━━━━━━━━┓┃struct ffblk ┃┃{ ┃┃ char ff_reserved[21]; /*DOS保留字*/┃┃ char ff_attrib; /*文件属性*/ ┃┃ int ff_ftime; /*文件时间*/ ┃┃ int ff_fd ate; /*文件日期*/ ┃┃ long ff_fsize; /*文件长度*/ ┃┃ char ff_name[13]; /*文件名*/ ┃┃} ┃┗━━━━━━━━━━━━━━━━━━┛attrib为文件属性,由以下字符代表┏━━━━━━━━━┳━━━━━━━━┓┃FA_RDONLY 只读文件┃FA_LABEL 卷标号┃┃FA_HIDDEN 隐藏文件┃FA_DIREC 目录┃┃FA_SYSTEM 系统文件┃FA_ARCH 档案┃┗━━━━━━━━━┻━━━━━━━━┛例:struct ffblk ff;findfirst("*.wps",&ff,FA_RDONLY);int findnext(struct ffblk *ffblk) 取匹配finddirst的文件,成功返回0 void fumerge(char *path,char *drive,char *dir,char *name,char *ext) 此函数通过盘符drive(C:、A:等), 路径dir(\TC、\BC\LIB等), 文件名name(TC、WPS等),扩展名ext(.EXE、.COM等)组成一个文件名存与path中.int fnsplit(char *path,char *drive,char *dir,char *name,char *ext)此函数将文件名path分解成盘符drive(C:、A:等), 路径dir(\TC、\BC\LIB等), 文件名name(TC、WPS等),扩展名ext(.EXE、.COM等),并分别存入相应的变量中.int getcurdir(int drive,char *direc)此函数返回指定驱动器的当前工作目录名称。