C语言函数参考手册(无赠送光盘)(txt+pdf+epub+mobi电子书下载)


发布时间:2020-08-14 20:14:27

点击下载

作者:明日科技

出版社:清华大学出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

C语言函数参考手册(无赠送光盘)

C语言函数参考手册(无赠送光盘)试读:

前言

Preface

C语言作为当前程序开发中最流行的编程语言之一,以其简单、高效、快捷、方便的特性吸引了大批用户。根据笔者使用C语言的经验,相信对C语言程序开发人员来说,C语言函数参考手册是必需的。因此,笔者编写了本书,希望能真正帮助C语言程序开发人员在编程时实现易查、易学、易用,并使其成为程序开发必备的工具书。本书内容

本书按照C语言库函数的头文件进行分类,每个头文件为一章内容,分别介绍了对应头文件中常用的C语言函数。对每个头文件中的函数按照字母进行排序,其中每个函数都按照功能、语法来介绍,在每个方法后都有相关的示例。本书特点即查、即学、即用

本书将查、学、用结合为一体,读者能够使用本书进行快速查询和快速应用,既是实用的工具书,也是学习的参考书。字母排序,快捷搜索

本书在讲解C语言函数时按照头文件进行分类,用户在使用时可以根据头文件快速地缩小查找范围,并且每个头文件以字母顺序进行排序,以便读者更快、更准确地查找相关内容。内容全面,示例丰富

本书内容涵盖了学习C语言应用的各方面技术。为了便于读者快速掌握每个知识点,每个知识点都给出对应的一个或多个示例,并提供了详尽的注释。精彩栏目,贴心提醒

本书根据需要在各章使用了“注意”、“说明”和“技巧”等小栏目,让读者可以在学习过程中更轻松地理解相关知识点及概念,并轻松地掌握个别技术的应用技巧。本书配套资源

本书提供了内容丰富的配套资源,包括源程序、素材,以及模块库、案例库、题库、素材库等多项辅助内容,读者朋友可以通过如下方式获取。

第1种方式:(1)登录www.tup.com.cn,在网页右上角的搜索文本框中输入本书书名(注意区分大小写和留出空格),或者输入本书关键字,或者输入本书ISBN号(注意去掉ISBN号间隔线“-”),单击“搜索”按钮。(2)找到本书后单击超链接,在该书的网页下侧单击“网络资源”超链接,即可下载。

第2种方式:

访问本书的新浪微博:C语言图书,找到配套资源的链接地址进行下载。读者对象

本书适合以下人群阅读。 初学编程的自学者 大中专院校的老师和学生 初、中级程序开发人员 参加实习的程序员 编程爱好者 相关培训机构的老师和学员 程序测试及维护人员读者服务&本书勘误

读者在使用本书过程中遇到的所有问题,均可通过以下方式联系我们。

1.新浪微博:C语言图书。

及时发布读者答疑、本书勘误、配套资料更新等内容。

2.腾讯QQ:4006751066。

3.登录网站:www.mingribook.com,在论坛、勘误发布、读者纠错、技术支持、读者之家等栏目中的相关模块中提问、留言或查看。本书作者

本书由明日科技组织编写,主要编写人员有王雪、赵永发、孙秀梅、曹飞飞、朱晓、陈丹丹、王国辉、张振坤、高春艳、王小科、赵会东、李继业、赛奎春、潘凯华、刘欣、李慧、杨丽、刘龄龄、陈英、肖鑫等。在编写本书的过程中,我们以科学、严谨的态度,力求精益求精,但错误、疏漏之处在所难免,敬请广大读者批评指正。编者第1章动态内存管理函数:alloc.h动态内存管理函数在程序执行过程中为程序中的数据分配内存,这些函数都通过指针来指明内存地址。最常用的动态内存管理函数是stdlib中的malloc()、calloc()和free(),这组函数在同一数据段中分配内存,当程序中动态分配的内存很多,以至于跨跃数据段分配时,用到本章中的函数,其实用性稍差。本章程序不能用VC编译,所有程序均在TC 2.0中编译运行。1.1brk()——重置数据段存储空间函数

brk()函数

实用程度:★★☆☆☆

实例位置:配套资源\SL\01\01

brk()函数用于通过重新设置数据段结束位置,改变数据段存储空间大小。

语法

int brk(void *endds);

brk()函数的语法参数说明如下:

参数endds为重新设置的数据段结束地址。

brk()函数的返回值:函数成功执行时返回值为0,不成功则为-1。

示例

本示例演示读取文本文件中的所有整数。使用malloc()分配MAX个整数空间,用于保存数据,执行中如果MAX个空间用完而文件中还有未读完的数据,则用brk()函数重新设置数据段存储空间。

程序执行前先在D:\下用记事本建立文件aa.txt,输入1 2 3 4 5 6 7 8(每个数之间用一个空格分开)。其具体代码如下:

运行结果如图1.1所示。图1.1 brk()函数的执行结果(文件中只有8个数)1.2coreleft()——获取未使用内存大小函数

coreleft()函数

实用程度:★★☆☆☆

实例位置:配套资源\SL\01\02

coreleft()函数用于获取未使用内存空间大小。

语法

unsigned coreleft(void):

coreleft()函数没有参数。

coreleft()函数的返回值:未使用内存的大小。

示例

本示例演示通过brk()函数改变动态分配空间大小,在改变前后用coreleft()函数输出剩余内存空间。其具体代码如下:

运行结果如图1.2所示。图1.2 用coreleft()函数查看剩余内存指点迷津

brk()函数执行前后剩余空间相差996,而不是1000,因为brk(ptr+1000)前4个字节是已用空间。1.3farcalloc()——申请远堆空间函数

farcalloc()函数

实用程度:★★☆☆☆

实例位置:配套资源\SL\01\03

farcalloc()函数用于申请远堆空间,每次分配nunits个大小为 unitsz的空间。

语法

void far * farcalloc(unsigned long nunits, unsigned long unitsz);

farcalloc()函数的语法参数说明如下:

参数nunits为分配数据块数。

参数unitsz为每个数据块的字节数。

farcalloc()函数的返回值:成功执行返回分配空间的地址,不成功则返回NULL。

示例

本示例演示用farcalloc()函数分配远堆空间。其具体代码如下:

运行结果如图1.3所示。图1.3 farcalloc()函数的执行结果1.4farcoreleft()——获取远堆空闲存储空间大小函数

farcoreleft()函数

实用程度:★★☆☆☆

实例位置:配套资源\SL\01\04

farcoreleft()函数用于获取远堆中空闲存储空间的大小。

语法

long farcoreleft(void);

farcoreleft()函数没有参数。

farcoreleft()函数的返回值:远堆栈中空闲存储空间大小。

示例

本示例演示用farcalloc()函数两次分配远堆空间,用farcoreleft()函数查看远堆剩余空间。其具体代码如下:

运行结果如图1.4所示。图1.4 farcoreleft()函数的执行结果1.5farfree()——释放远堆空间函数

farfree()函数

实用程度:★★☆☆☆

实例位置:配套资源\SL\01\05

farfree()函数用于释放远堆空间。

语法

void farfree(void);

farfree()函数没有参数。

farfree()函数没有返回值。

示例

本示例演示用farfree()函数释放远堆空间,释放前后用farcoreleft()函数查看剩余空间。其具体代码如下:

运行结果如图1.5所示。图1.5 farfree()函数的执行结果1.6farmalloc()——申请远堆空间函数

farmalloc()函数

实用程度:★★☆☆☆

实例位置:配套资源\SL\01\06

farmalloc()函数用于远堆存储块分配空间。与farcalloc()函数相似,但其功能更简单,farcalloc()一次分配n段大小为size的单元;farmalloc()一次分配1段大小为size的单元。

语法

void far * farmalloc(unsigned long size);

farmalloc()函数的语法参数说明如下:

参数size为分配空间的字节数。

farmalloc()函数的返回值:成功执行返回分配空间的地址,不成功则返回NULL。

示例

本示例演示用farmalloc()函数分配远堆空间。其具体代码如下:

运行结果如图1.6所示。图1.6 farmalloc()函数的执行结果1.7farrealloc()——远堆存储块空间调整函数

farrealloc()函数

实用程度:★★☆☆☆

实例位置:配套资源\SL\01\07

farrealloc()函数用于调整已分配内存的位置,而不改变其空间大小。

语法

void far *farrealloc(void far *oldblock, unsigned long nbytes);

farrealloc()函数的语法参数说明如下:

参数oldblock为原内存块地址。

参数nbytes为调整量。

farrealloc()函数的返回值:成功执行时返回新地址,失败时则返回NULL。

示例

本示例演示用farrealloc()函数调整内存块位置。调整前后位置有改变,而占用空间大小不变。其具体代码如下:

运行结果如图1.7所示。图1.7 farrealloc()函数的执行结果1.8sbrk()——增加数据段存储空间函数

sbrk()函数

实用程度:★★☆☆☆

实例位置:配套资源\SL\01\08

sbrk()函数与brk()函数功能相似,用于改变数据段存储容量。不同的是,sbrk()函数直接说明要增加的容量,而brk()函数通过改变结束位置改变数据段容量。

语法

char *sbrk(int incr);

sbrk()函数的语法参数说明如下:

参数incr为增加字节数。

sbrk()函数的返回值:函数成功执行时返回值为改变前的值,不成功则为-1。

示例

本示例演示用sbrk()函数增加动态内存空间,用coreleft()函数查看增加前后的剩余空间大小。其具体代码如下:

运行结果如图1.8所示。图1.8 sbrk()函数的执行结果第2章DEBUG相关函数库:assert.h程序执行时总是不可避免地出现意外出错的情况,这些意外出错有的可以由程序做出补救,还有一些无法补救。比如:程序要删除一个文件,而文件正被其他用户访问(其他用户可能是你的程序的其他部分),导致文件不可删除,这样删除文件语句本身意外出错,如果下面再出现新建同名文件的语句也会出错。大多数情况下,意外的错误导致程序无法正常执行,要终止程序。assert.h文件只有一个函数assert(),该函数对程序中的意外出错提供了强有力的支持。assert()——错误判断函数

assert()函数

实用程度:★★☆☆☆

实例位置:配套资源\SL\02\01

assert()函数用于判断可能的错误是否发生,如果发生,程序终止执行;不发生则正常执行。函数在有可能出错的地方测试一个条件,当条件成立时,表示发生错误。

语法

void assert(int test);

assert()函数的语法参数说明如下:

参数test为待测试表示式。

assert()函数没有返回值。

示例

本示例演示通过一个数除零引发错误。当为b输入0时,结果如图2.1所示,其他数据正常运算。其具体代码如下:图2.1 assert()函数条件不成立时的执行结果

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载