主页 详情

《C/C++使用技巧1001例》_(美)KrisJamsa著;魏津,王路等译_10940165_7505336258

【书名】:《C/C++使用技巧1001例》
【作者】:(美)KrisJamsa著;魏津,王路等译
【出版社】:北京:电子工业出版社
【时间】:1996
【页数】:772
【ISBN】:7505336258
【SS码】:10940165

最新查询

内容简介

第一章C语言学习初步

技巧1 编程简介

目 录

技巧2 建立ASCII源文件

技巧3 C语言程序的编译

技巧4 理解语法规则的错误

技巧5 典型C程序的结构

技巧6 给程序增加语句

技巧7 屏幕显示另起一行

技巧8 C语言中区分字母的大小写

技巧9 理解逻辑错误(BUGS)

技巧10理解程序的开发过程

技巧11理解文件的类型

技巧12进一步理解连接程序

技巧14 帮助编译器定位头文件

技巧13理解头文件

技巧15加快编译速度

技巧16程序注释

技巧17提高程序的可读性

技巧18注意编译器的警告消息

技巧19控制编译器的警告消息

技巧20将语句注释掉

技巧21 名字中有什么?

技巧22理解C语言中的分号

技巧23变量的理解

技巧24给程序中变量赋值

技巧25理解程序中的变量类型

技巧26声明同种类型的多个变量

技巧27声明变量时应加注释

技巧30使用有意义的变量名

技巧29变量声明时对变量的多个初始化

技巧28在变量声明时进行

技巧31理解C语言的关键字

技巧32理解整型变量(int)

技巧33理解字符型变量(char)

技巧34理解浮点型变量(float)

技巧35理解双精度型变量(double)

技巧36给浮点数赋值

技巧37理解类型修饰符

技巧38理解无符号的类型修饰符(unsigned)

技巧39理解长类型修饰符(long)

技巧40 unsigned和long类型修饰符的结合使用

技巧41大数值的便用

技巧42理解寄存器类型修饰符(register)

技巧43理解短类型修饰符(short)

技巧45理解带符号类型修饰符(signed)

技巧44 当变量定义中有类型修饰符时可以省略int

技巧46多重赋值运算

技巧47将一种类型的变量值赋给不同类型的变量

技巧48建立自己的类型

技巧49赋于16进制或8进制的值

技巧50溢出的理解

技巧51理解变量的精度

技巧52引号及其它字符的赋值运算

技巧53 printf语句

技巧54使用printf显示整型数

技巧55用八进制或十进制显示整型数

技巧56用printf显示无符号整型数

技巧57使用printf显示长整型数值

技巧58使用printf显示浮点数

技巧59使用printf显示字符

技巧60使用指数格式显示浮点数

技巧61使用十进制或指数格式显示浮点数

技巧63用printf显示指针地址

技巧62用printf显示字符串

技巧64带符号显示数值

技巧65使用printf格式输出一个整数

技巧66整数输出前面置零

技巧67#显示八进制和十六进制数的前缀

技巧68用printf格式化输出一个浮点数

技巧69指数格式化输出

技巧70 printf输出左对齐

技巧71 printf中的格式修饰符的综合使用

技巧72字符串延续至下一行

技巧73远近字符串的显示

技巧74在printf中使用转义码

技巧75 printf所显示字符数的确定

技巧77使用ANSI设备驱动程序

技巧76使用printf的返回值

技巧78利用ANSI转义序列清除屏幕

技巧79利用ANSI转义序列控制显示内容的颜色

技巧80利用ANSI驱动程序定位光标

技巧81 C语言中的基本数学运算

技巧82算术中的模运算

技巧83理解运算符的优先级

技巧84 对运算符求值顺序的强制

技巧85 理解C语言加运算符

技巧86 理解C语言减1运算符

技巧87 理解位的或运算

技巧88理解位的与运算

技巧89理解位的异或运算

技巧90理解位的反运算

技巧91 对变量自身进行运算

技巧92 理解C的条件运算符

技巧93 理解C的变量大小运算符

技巧94执行移位操作

技巧95 执行位循环移位

技巧96 对条件运算符的理解

技巧97 对循环过程的理解

技巧98 C语言是如何表示条件真假的

技巧99 使用if测试条件

技巧100单条语句和复合语句的理解

技巧101等式测试

技巧102关系运算

技巧103用逻辑与判断两个条件

技巧104用逻辑或判断两个条件

技巧105逻辑反运算

技巧106条件运算结果的被赋值

技巧107在复合语句中定义变量

技巧108使用缩进方式提高程序的可读性

技巧109扩展Ctrl-Break检查的使用

技巧110检测浮点值

技巧111无限循环

技巧112 for语句中的一部分是可选的

技巧113测试一个赋值语句

技巧114对if和if—else的认识

技巧115语句重复执行指定的次数

技巧116 for语句当中的减量值

技巧117 for循环增量的控制

技巧118 for循环不仅适用于整型变量

技巧119对空循环的理解

技巧120对无限循环的理解

技巧121一个for循环中使用逗号运算符

技巧122避免在for循环中改变控制变量的值

技巧123使用While循环

技巧124对while循环语句中部分的理解

技巧125使用do来重复执行一条或多条语句

技巧126对继续语句的理解

技巧127用break语句来结束一个循环

技巧128使用goto分支

技巧129测试多个条件

技巧130对switch中break语句的理解

技巧131 用switcb语句的default用法

第二章宏和常量

技巧132在程序中定义一个常量

技巧133宏和常量的展开

技巧134给常量和宏命名

技巧135使用_FILE_预处理常量

技巧136使用_LINE_预处理常量

技巧137改变预处理器常数的值

技巧138产生一个非条件预处理器错误

技巧139其它的预处理器常量

技巧140记录预处理器的日期和时间

技巧141 测试是否与ANSI C兼容

技巧142测试编译器是否支持C++

技巧143解除宏或常量的定义

技巧144宏和函数的异同

技巧145对编译器指令的理解

技巧146进一步学习宏、常量和预处理指令

技巧147建立自己的头文件

技巧148 #include<文件名>和#include”文件名”的比较

技巧149测试是否定义一个符号

技巧150执行If—Else预处理

技巧151测试更强的预处理条件

技巧152执行If—Else和Else—If预处理

技巧154建立自己的宏

技巧153使用多行宏和常量

技巧155在宏定义中不能使用分号

技巧156建立求最大最小值的宏

技巧157建立求平方和立方的宏

技巧158注意宏定义中空格

技巧159对宏中括号的理解

技巧160宏是无类型的

第三章字符串

技巧161字符串的形象化说明

技巧162编译器如何表示一个字符串

技巧163 C如何存贮字符串

技巧164“A”和‘A’有什么区别

技巧165在一个字符串常量中如何表示一个引号

技巧166决定串的长度

技巧167 strlen函数的使用

技巧168字符串的复制

技巧169字符串相加

技巧170把n个字符加到一个字符串后

技巧171 把一个串变换成另一个串

技巧172不要超出一个字符串的边界

技巧173判断两个字符串是否相同

技巧174 大小写忽略时字符串相等的判断

技巧175把字符串转换为全大写或全小写字母

技巧176在字符串中查找某个字符

技巧177返回某字符在字符串中第一次出现的位置

技巧178确定某字符在字符串中的最后出现位置

技巧179返回某字符在字符串中最后出现的位置

技巧180远串调用

技巧181 支持远串调用的函数

技巧182统计一个字符串中某字符出现的次数

技巧183反转字符串的内容

技巧184用某一指定字符来填充字符串

技巧185两个字符串的比较

技巧186 比较两个中开始的n个字符

技巧187进行大小写忽略的串比较

技巧188把一个字符串转换为数

技巧189复制一个字符串的内容

技巧190找出字符串中第一个不属于给定字符集的字符

技巧191 确定一个子串在源串中的位置

技巧192给出现的子串计数

技巧193获得子串出现的位置

技巧194获得最后出现的子串指针

技巧195 不用%s格式修饰符来显示串

技巧196一个字符串中删除一个子串

技巧197使用其它子串来替换一个子串

技巧198转换一个ASCII数字表达式(ASCII Numeric Representation)

技巧200判断一个字符是否是字母表中的一个字母

技巧201 判断一个字符是否为一个ASCII值

技巧199判断一个字符是否是字母数字(Alphanumeric)

技巧202判断一个字符是否为控制字符

技巧203判断一个字符是否是数字(Digit)

技巧204判断一个字符是否是一个图形字符(Graphics Character)

技巧205判断一个字符是大写字母还是小写字母

技巧206判断一个字符是否可打印

技巧208判断一个字符是否为空白字符

技巧209决定一个字符是否为十六进制数值

技巧207判断一个字符是否是标点符号

技巧210将一个字符转换成大写形式

转换211把一个字符转换成小写字母

技巧212使用ASCII字符

技巧213将格式化输出结果送到一个字符串变量

技巧214从字符串中读取参数

技巧215标识(tokenizing)串以节省空间

技巧216初始化字符串

技巧218对局部变量的理解

第四章函数

技巧217返回值不是整型的函数

技巧219函数是如何使用堆栈的

技巧220对函数调用开销的理解

技巧221 C把局部变量放在哪里

技巧222声明全局变量

技巧223为什么程序应该尽量避免使用全局变量

技巧224解决全局和局部变量名的冲突

技巧225优化全局变量的有效范围

技巧226对函数值参(call by value)调用的理解

技巧227为什么值参调用能防止参数值的改变

技巧228对形参调用(call refetence)的理解

技巧229获得变量的地址

技巧230使用变量的地址

技巧231改变参数的值

技巧232仅改变指定的参数

技巧233形参调用仍要使用堆栈

技巧234能记住的函数内部变量

技巧235 C是如何初始化静态变量的

技巧236按pascal调用顺序传递参数

技巧237 pascal关键字真正做了什么

技巧238混合语言编程的例子

技巧239对cdecl关键字的理解

技巧240对递归的理解

技巧241对递归factorial函数的理解

技巧242另一个递归例子

技巧243通过显示数值进一步理解递归

技巧244直接递归和间接递归

技巧245使用或不使用递归

技巧246为什么递归函数要慢

技巧247如何取消递归

技巧249传递具体的数组元素

技巧248把串传递给函数

技巧250对参数中const的理解

技巧251使用const不能防止参数的改变

技巧252解决名字冲突问题

技巧253对无界串说明的理解

技巧254 比较指针声明和串声明

技巧255如何在堆栈中使用串参数

技巧256对外部变量的理解

技巧257 extern的使用

技巧258对外部静态变量的理解

技巧259对volatile关键字的理解

技巧260对调用帧(CallFrame)和基地址指针(BP)的理解

技巧261调用汇编语言函数

技巧262从汇编语言函数中返回数值

技巧265对auto关键字的理解

技巧264不使用参数的函数

技巧263不返回结果的函数

技巧266理解C的域(SCOPE)

技巧267对命名区(Name Space)和标识符的理解

技巧268对标识符可视性(Visibilily)的理解

技巧269理解变量寿命(Duration)

技巧270支持参数个数不定的函数

技巧271支持个数不定的参数

技巧272 Va_start,Va_arg和Va_end是如何工作的

技巧273建立支持多种类型多种参数的函数

技巧274对函数的理解

技巧275在函数中使用变量

技巧276 main也是函数

技巧277参数使用初步

技巧278使用多个参数

技巧280从函数中返回结果

技巧279旧C程序中的参数声明

技巧281 return语句的理解

技巧282对函数原型的理解

技巧283对运行库的理解

技巧284对形式参数和实参数的理解

技巧285对作用域的理解

第五章热键和屏幕I/O

技巧286从键盘上读字符

技巧287显示字符

技巧288对缓冲区输入的理解

技巧289把键盘输入内容赋给串

技巧290把getchar和putchar结合起来使用

技巧291记住,getchat和putchar都是宏

技巧292用直接I/O来读入字符

技巧294使用‘\r’和‘\n’

技巧293字符不回显的直接键盘输入

技巧295执行直接输出

技巧296将输入的字符放回到键盘缓存区中

技巧 297 使用cprintf来快速格式化输出

技巧298快速的格式化键盘输入

技巧299写字符串

技巧300使用直接I/O快速输出字符串

技巧301 从键盘上读字符串

技巧 302字符串的快速输入

技巧303输出彩色文本

技巧304清除屏幕内容

技巧305清除当前行的内容直到行尾

技巧306删除当前行的内容

技巧307 屏幕光标的定位

技巧308获得当前光标的行和列位置

技巧309在屏幕上插入空行

技巧 310把屏幕的文本内容复制到内存中

技巧311 将保存的文本恢复到屏幕上

技巧312获得文本模式的设置参数

技巧313控制屏幕的颜色

技巧314设置背景颜色

技巧315使用 textcolor设置前景颜色

技巧316使用textbackground设置背景颜色

技巧317控制字符亮度

技巧318获得当前的文本显示模式

技巧319在屏幕上移动文本

技巧320定义文本窗口

第六章计算

技巧321求整数表达式的绝对值

技巧322反余弦值的计算

技巧323反正弦值的计算

技巧324反正切值的计算

技巧325复数绝对值的计算

技巧326浮点数的向上取整

技巧327余弦值的计算

技巧328双曲余弦的计算

技巧329执行整数除法

技巧330幂的计算

技巧331浮点数绝对值的计算

技巧332浮点除法余数的计算

技巧333浮点数的有效数和指数的使用

技巧334计算X*2?的结果

技巧335 自然对数的计算

技巧336 log10x的计算

技巧337求数的最大值和最小值

技巧338把浮点值分成整数部分和小数部分

技巧339 Xn幂的计算

技巧340 10x的计算

技巧341 随机数的产生

技巧342产生一个指定范围的随机数

技巧343指定随机数产生种子

技巧344正弦值的求解

技巧345双曲正弦的计算

技巧346平方根的计算

技巧347正切值的计算

技巧348双曲正切的计算

技巧349建立自己的数学错误句柄

第七章文件、目录和磁盘

技巧350判断当前盘号

技巧351 设置指定驱动器为当前盘

技巧352判断有效的磁盘空间

技巧353 对DBLSPACE的认识

技巧354读文件分配表(FAT)的信息

技巧356对扇区进行绝对的读写

技巧355对磁盘ID的理解

技巧357基于BIOS磁盘I/O操作

技巧358测试软盘驱动器是否就绪

技巧359将格式化的信息输出到文件

技巧360文件更名

技巧361删除文件

技巧362判断文件的存取权限

技巧363设置文件的存取方式

技巧 364进一步控制文件属性

技巧365对文件流错误的测试

技巧366获得文件的大小

技巧367清理I/O流

技巧368一步关掉所有打开的文件

技巧369得到文件流的文件句柄

技巧370使用p_tmpdir建立临时文件

技巧372建立真正的临时文件

技巧371 使用TMP或TEMP建立临时文件名

技巧373删除临时文件

技巧374在命令行定义的路径中搜索文件

技巧375 在DOS环境变量的目录列表中搜索文件

技巧376在TEMP目录中打开文件

技巧377减少文件I/O的操作

技巧378对目录名中斜杠的认识

技巧379改变当前目录

技巧380创建目录

技巧381删除目录

技巧382删除目录树

技巧383建立一个完整的路径名

技巧384分解带路径的文件名

技巧 385建立路径名

技巧386使用低级函数来打开和关闭文件

技巧387创建文件

技巧388执行低级的读和写操作

技巧389测试文件末尾

技巧390低级文件操作函数的使用

技巧391指定文件的翻译模式

技巧392使用Iseek定位文件指针

技巧393打开20个以上的文件

技巧394使用基于DOS的文件服务

技巧395获得文件的日期和时间

技巧396使用位字段来获得文件的日期和时间

技巧397设置文件的日期和时间记录

技巧398把文件日期和时间的记录设置为当前日期和时间

技巧399一次只读写一个字

技巧400改变文件的大小

技巧401控制读写文件的打开操作

技巧402指定一个文件缓冲器

技巧403分配文件缓冲区

技巧404使用mktemp来建立专门的文件名

技巧405读和写结构变量

技巧406从一个文件流中读结构中的数据

技巧407复制文件句柄

技巧408强制文件句柄的设置

技巧409将文件句柄与文件流相关联

技巧410对文件共享的理解

技巧411打开可共享存取文件

技巧412锁定文件的内容

技巧413灵活的文件锁定控制

技巧414使用DOS目录

技巧415打开一个目录

技巧416读目录项

技巧417 目录操作综合例子—读C:\DOS

技巧419递归读取磁盘文件

技巧418目录复位

技巧420确定当前文件指针的位置

技巧421打开共享文件流

技巧422在指定目录中建立专门文件

技巧423创建新文件

技巧424使用fopen打开文件

技巧425对FILE结构的理解

技巧426关闭打开的文件

技巧427每次读写信息的一个字符

技巧428对文件指针中位置指针的理解

技巧429确定当前文件位置

技巧430对文件流的理解

技巧431对文件翻译模式的理解

技巧432对CONFIG.SYS FILES=Entry的理解

技巧433低级和高级文件I/O

技巧434对文件句柄的理解

技巧436显示文件处理表的内容

技巧435对文件处理表的理解

技巧437理解系统文件表

技巧438显示系统文件表

技巧439对流指针和文件句柄关系的理解

技巧440打开20个以上的文件

技巧441 使用DOS服务来存取文件

技巧442强制打开二进制文件或文本文件

技巧443读和写文本文件行

技巧444 fgets和fputs的使用

技巧445强制二进制文件的转化

技巧446 为什么TEXTCOPY不能复制二进制文件

技巧447测试文件的结束(文件尾)

技巧448退回一个字符

技巧449格式化的读取文件数据

技巧450文件指针的相对移动

技巧451获得文件句柄信息

技巧452重新打开文件流

第八章数组、指针和结构

技巧453对数组的理解

技巧454声明一个数组

技巧455对数组图示

技巧456对数组内存要求的理解

技巧457数组的初始化

技巧458存取数组元素

技巧459遍历数组元素

技巧460使用常量来定义数组

技巧461把数组传递给函数

技巧462不同大小的数组参数

技巧463串数组如何区分

技巧464 在堆栈中传递数组………………………………………………………………………(3??)技巧465 一个数组能存贮多少元素

技巧466使用大数组时的内存模式

技巧467数组与动态内存的折衷比较

技巧469对行和列的理解

技巧 468对多维数组的理解

技巧470 存取二维数组中的元素

技巧 471 初始化二维数组中的元素

技巧472确定多维数组所需的内存数量

技巧 473遍历二维数组

技巧474遍历三维数组

技巧475初始化多维数组

技巧 476传递二维数组给函数

技巧477把多维数组作为一维数组来处理

技巧478C是如何存贮多维数组的

技巧 479行主排序与列主排序的比较

技巧480结构数组的数组

技巧481 对联合(UNION)的理解

技巧 482使用联合来节省存贮器

技巧483使用REGS??一种典型的联合

技巧484 使用REGS联合

技巧485对位域的理解

技巧486位域结构的直观理解

技巧487位域结构所能够存贮数值的范围解

技巧488在数组中查找一个具体数值

技巧489对二分法检索的理解

技巧490使用二分法检索

技巧491给数组排序

技巧492对气泡排序的理解

技巧493气泡排序的使用

技巧494对选则排序的理解

技巧495选则排序的使用

技巧496对希尔排序的理解

技巧 497希尔排序的使用

技巧498对快速排序的理解

技巧499快速排序的使用

技巧501字符串数组的排序

技巧500 上述排序中的一些问题

技巧502使用lfind来检索数组

技巧503使用lsearch检索数值

技巧504使用bsearch来检索已排序数组中的元素

技巧505使用qsort进行数组排序

技巧506确定数组元素的数目

技巧507一个指针是一个地址

技巧508确定变量地址

技巧509 C把数组作为指针来处理

技巧510数组中使用地址运算符( )

技巧511声明指针变量

技巧512指针的反向引用

技巧513使用指针值

技巧514在函数参数中使用指针

技巧516指针的增量与减量操作

技巧515指针运算

技巧517把指针引用和增量结合起来

技巧518使用指针遍历串

技巧519返回指针的函数

技巧520建立返回指针的函数

技巧521对指针数组的理解

技巧522字符串数组的直观理解

技巧523遍历字符串数组

技巧525指向字符串指针的指针的使用

技巧524把字符串数组作为指针来处理

技巧526使用指针来定义一个字符串常量

技巧527对void指针的理解

技巧528函数的指针

技巧529函数指针的使用

技巧530指向指针的指针的指针

技巧531对结构的理解

技巧533结构标识符就是结构名

技巧532结构是变量定义的模板

技巧534用不同的方法来定义结构变量

技巧535对结构成员的理解

技巧536结构的形象化理解

技巧537结构的使用

技巧538给函数传递结构变量

技巧539改变函数中的结构

技巧540理解(*pointer).member的间接引用

技巧541 pointer—>member格式的使用

技巧542使用无标识(tag)的结构

技巧543结构定义的作用域

技巧544初始化结构变量

技巧545执行结构I/O

技巧546使用嵌套结构

技巧548建立结构数组

技巧547含有数组的结构

第九章DOS和BIOS服务

技巧549理解DOS的系统服务

技巧550理解BIOS服务

技巧551理解寄存器

技巧552理解标志寄存器

技巧553理解软件中断

技巧554使用BIOS驱动打印机

技巧555 Ctrl_Break信息

技巧556 DOS的边效应(Side Effects)

技巧557临时中止一个程序

技巧558加上声音效果

技巧559取得国别信息

技巧560磁盘传输地址的理解

技巧561 存取及控制DTA

技巧562使用BIOS的键盘服务

技巧563获取DOS的设备列表

技巧564 串口I/O

技巧565用bdos获得DOS服务

技巧566获取扩展的DOS错误信息

第十章内存管理

技巧567显示BIOS常规内存数量

技巧568将远地址分成段地址和偏移地址

技巧569建立一个远指针(far pointer)

技巧570确定可用的内存

技巧571读取段寄存器的内容

技巧572理解内存类型

技巧573常规内存的理解

技巧574理解常规内存的安排

技巧575常规内存的使用

技巧576 为什么PC以及DOS被限制在1Mb以下

技巧578理解扩充内存

技巧577 PC怎样结合段和偏移量来构造一个真正的地址

技巧579使用扩充内存

技巧580扩展内存的理解

技巧581实模式和保护模式的理解

技巧582访问扩展内存

技巧583高内存区的理解

技巧584栈的理解

技巧585理解不同的栈配置

技巧586判断程序当前栈空间

技巧587用_stklen控制栈空间

技巧588限定内存范围

技巧589把一块内存中的内容拷贝到另一块内存中

技巧590拷贝内存区间直到遇到指定字节

技巧591 比较两个无符号字符数组

技巧592交换字符串中的相邻字节

技巧593分配动态内存

技巧594内存指针类型

技巧595释放不再需要的动态内存

技巧596用calloc分配内存

技巧597堆的理解

技巧598突破64Kb的堆限制

技巧599从栈中分配内存

技巧600为巨型数据分配内存

技巧601改变已分配内存的大小

技巧602理解brk

技巧603堆的检测

技巧604快速堆检验

技巧605填充未用的堆空间

技巧606检查指定的堆入口

技巧607寻访堆入口

技巧608访问指定的内存位置

技巧609往内存中写数据

技巧610理解PC端口

技巧611存取端口的数值

技巧612 CMOS的理解

技巧613内存模式的理解

技巧614微内存模式的理解

技巧615小内存模式的理解

技巧616中内存模式的理解

技巧617紧凑内存模式的理解

技巧618大内存模式的理解

技巧619巨内存模式的理解

技巧620判断当前的内存模式

第十一章日期和时间

技巧621 获得从1970年1月1日算起以秒为单位的日期和时间值

技巧622把日期和时间从秒转换成ASCII码格式

技巧623标准时间调整

技巧625显示程序的运行时间

技巧624延迟指定的毫秒数

技巧626比较两个时间

技巧627获取日期字符串

技巧628获得时间字符串

技巧629读BIOS计时器

技巧630使用本地时间

技巧631 使用格林尼治标准时间

技巧632获得DOS系统时间

技巧633获得DOS系统日期

技巧634设定DOS系统时间

技巧635设定DOS系统日期

技巧636把DOS日期转换为UNIX格式

技巧637获得本地时和格林尼治标准时的时差

技巧638确定当前所在的时区

技巧640使用TZ环境变量

技巧639用tzset设定时区

技巧641在程序中设定TZ环境变量

技巧642获得时区信息

技巧643 以自1970年1月1日起算的秒数设定系统时间

技巧644把日历时间转化为自1970年1月1日零时起算的秒数

技巧645判断当前日期的儒略(Julian)日

技巧646建立格式化的日期和时间串

技巧647理解PC的时钟类型

第十二章I/O定向和命令行处理

技巧648等待压键

技巧649提示用户键入密码

技巧650写自己的密码输入函数

技巧651理解输出重定向

技巧652理解输入重定向

技巧653综合使用输入和输出重定向

技巧654使用标准输入(stdin)和标准输出(stdout)

技巧656理解getchar和putchar

技巧655理解管道操作符

技巧657给重定向的输入编号

技巧658确认一个信息显示在屏幕上

技巧659建立自己的MORE命令

技巧660显示被定向的行数

技巧661显示I/O重定向的字符数

技巧662一个定时的MORE命令

技巧663制止I/O重定向

技巧664使用标准打印(stdprn)文件句柄

技巧665把一个重定向输出给一个文件

技巧666使用标准辅助文件句柄

技巧667找出在重定向输入中的某字符串

技巧668显示重定向输入内容的前几行

技巧669理解命令行选项

技巧671显示命令行

技巧670显示命令行参数数目

技巧672在命令行中使用引号引起来的参数

技巧673用命令行参数来显示指定文件内容

技巧674把argv看作一个指针

技巧675 C怎样知道命令行

技巧676理解环境

技巧677把env看作一个指针

技巧678使用void作main的参数

技巧680理解程序退出(Exit)状态值

技巧679使用命令行中的数字

技巧681使用return处理退出状态值

技巧682为什么声明main为void

技巧683在环境中搜索特定变量(entry)

技巧684 DOS怎样看待环境

技巧685使用全局变量environ

技巧686在当前环境中增加一项

技巧688放弃当前运行的程序

技巧687在DOS环境中增加一项

技巧689定义在程序终止时运行的函数

第十三章编程工具

技巧690理解库

技巧691 目标代码的重复使用

技巧692编译C和OBJ文件中的问题

技巧693建立库文件

技巧694公共库操作

技巧695列出库文件中的函数

技巧696使用库来减少程库的编译时间

技巧697进一步理解库程序

技巧698理解连接器

技巧699了解连接器的功能

技巧700使用连接图

技巧701使用连接器响应文件

技巧703生成一个简单的MAKE文件

技巧702用MAKE建立的简单应用

技巧704多支持文件和MAKE

技巧705注释你的MAKE文件

技巧706命令行和MAKE

技巧707把多个支持文件放在一个MAKE文件中

技巧708明示(Explicit)和暗示(Impticit)的MAKE规则

技巧709使用MAKE的宏

技巧710定义MAKE宏

技巧711 MAKE的条件执行

技巧712检验MAKE宏

技巧713包含第二个MAKE文件

技巧714使用MAKE宏修饰符

技巧715结束一个MAKE文件并返回错误信息

技巧716不显示所执行的命令名

技巧719同时调用和改变宏

技巧718在MAKE中处理命令执行后的退出状态

技巧717 使用文件BUILTINS.MAK

技巧720对多个支持文件执行同一条MAKE命令

第十四章 高级C技巧

技巧721判断当前机器内是否有数学协处理器

技巧722理解ctype.h中的is类宏

技巧723直接控制视屏显示

技巧724检查系统和数学错误

技巧725显示预定义的错误信息

技巧726确定操作系统的版本号

技巧727理解可移植性

技巧728执行非局部的跳转

技巧729获得进程ID(PID)

技巧730调用DOS内部命令

技巧731使用PSP全局变量

技巧733使用枚举型变量

技巧732在变量定义使用const修饰符

技巧734如何使用枚举型

技巧735理解枚举值

技巧736为枚举型的成员赋值

技巧737保存和恢复寄存器

技巧738动态链表初步

技巧739定义一个链表结构

技巧740构造一个链表

技巧741简单链表举例

技巧742理解链表遍历

技巧743构造一个更有趣的链表

技巧744给链表添加一个节点

技巧745插入一个链表节点

技巧746显示一个排序后的目录

技巧747删除表中的一个节点

技巧749建立一个简单的双链表

技巧748使用双链表

技巧750理解node—>previous—>next

技巧751从双链表中删除一个节点

技巧752往双链表中插入一个节点

技巧753理解子进程

技巧754创建一个子进程

技巧755使用其它的spawnlxx函数

技巧756使用spawnvxx函数

技巧757载入一个子进程

技巧758使用其它的execlxx函数

技巧759使用execvxx函数

技巧760理解覆盖

技巧761理解中断

技巧762 PC机中断

技巧763使用interrupt关键字

技巧765设置中断向量

技巧764确定中断向量

技巧766中断的关闭和打开

技巧767建立一个简单的中断处理程序

技巧768链接第二个中断

技巧769产生一个中断

技巧770 PC定时器俘获

技巧771理解严重错误

技巧772 C中的严重错误处理程序

技巧773一个更完善的严重错误处理程序

技巧774恢复被替换的中断

技巧775建立Ctrl—Break处理程序

技巧776严重错误处理程序能干什么

技巧777选择合适的指令集以提高性能

技巧778内部函数代码内嵌化

技巧780理解快速函数调用

技巧779函数代码内嵌化的设置

技巧781 _fastcall参数传递规则

技巧782理解不变代码

技巧783理解重复加载压缩

技巧784理解代码压缩

技巧785理解循环压缩

技巧786理解循环归纳和强度压缩

技巧787理解消除公用子表达式

技巧788理解标准的类型转换

技巧789理解C的四种基本类型

技巧790基本的和派生的类型

技巧791理解初始化值

技巧792理解链接

技巧793理解暂时性声明

技巧795理解左值

技巧794声明和定义的比较

技巧796理解右值

技巧797使用段寄存器关键字

技巧798注意远指针

技巧799理解正规化指针

技巧800数学协处理器语句

技巧801理解cdecl型变量和pascal型变量

技巧802防止循环包含

第十五章C++初步

技巧803什么是C++?

技巧804 C++源文件与原来什么不同?

技巧805从一个简单的C++程序开始

技巧806理解coutI/O流

技巧807用cout输出数值和变量值

技巧808用cout同时输出不同类型的值

技巧810重定向cout

技巧809显示十六进制和八进制值

技巧811如果你喜欢printf,使用printf

技巧812输出到cerr

技巧813使用cin获得输入

技巧814 cin怎样区分输入数据

技巧815 cin、cout、cerr怎样得知数值类型

技巧816用clog执行输出操作

技巧817 cin、cout、cerr和clog都是类的实例

技巧818用flush清除输出

技巧819在iostream.h中有什么?

技巧820 C++要求函数原型

技巧821 C++增加了新的关键字

技巧822 C++支持匿名联合

技巧824提供缺省参数值

技巧823使用全局变量

技巧825控制cout的输出宽度

技巧826用setw设置cout宽度

技巧827指定cout的填充字符

技巧828右对齐和左对齐cout输出

技巧829控制浮点数的显示精度

技巧830以定点格式或科学计数法显示数值

技巧831恢复cout缺省设置

技巧832设置I/O的进制

技巧833在需要变量的地方声明变量

技巧834在函数原型中放置参数缺省值

技巧835使用位操作符和cout

技巧836理解短路检查(Short—Circwit Evalnation)

技巧837 C++中的cotst关键字

技巧838 C++中的enum关键字

技巧840用new分配内存

技巧841为多个数组分配内存

技巧839理解自由内存区

技巧842检测自由内存区

技巧843理解远近自由内存区

技巧844使用远指针和new操作符

技巧845释放从自由区分配的内存

技巧846理解C++的引用

技巧847把引用传递给函数

技巧848注意隐蔽对象

技巧849传递参数的三种方法

技巧850引用使用的规则

技巧851 函数可以返回引用

技巧852使用C++内嵌关键字

技巧853使用C++的asm关键字

技巧854用cin语句读一个字符

技巧855用cout语句输出一个字符

技巧856一个简单的过滤程序

技巧858一个简单的First命令

技巧857一个简单的Tee命令

技巧859一个改进的First命令

技巧860测试文件的结束

技巧861用endl进行换行

技巧862理解链接指示符

技巧863理解重载

技巧864重载函数

技巧865另一个重载函数的例子

技巧866重载操作符

技巧867用cin一次读取一行

技巧868在循环中使用cin.getline

技巧869改变new的缺省处理

技巧870用set_new_handler设定新的new处理函数

技巧871判断编译器类型

技巧872结构和C++

技巧873函数作为结构的成员

技巧875在结构外书写函数代码

技巧874在结构中书写函数代码

技巧876向成员函数传递参数

技巧877定义多个同一结构的变量

技巧878使用同一成员函数名的不同结构

技巧879区分同成员名的不同函数

技巧880理解对象

技巧881理解面向对象编程

技巧882理解C++的类

技巧883在变量定义中使用或省略class

技巧884理解public:标号

技巧885理解信息隐藏

技巧886使用private:标号

技巧887使用公有和私有数据

技巧888隐藏什么,公开什么

技巧889公有方法通常被称为接口函数

技巧890在类外部定义类函数

技巧891在类的内部和外部定义方法

技巧892理解对象实例

技巧893对象实例应共享代码

技巧894理解构造函数

技巧895使用构造函数

技巧896构造函数没有返回值

技巧897解决构造函数的参数名冲突问题

技巧898用构造函数分配内存

技巧899用简洁的方法处理内存分配问题

技巧900构造函数的缺省参数值

技巧901重载构造函数

技巧902了解类的作用域

技巧903理解析构函数

技巧904建立一个类变量数组

技巧905构造函数和类对象数组

技巧907重载加法操作符

技巧906重载操作符

技巧908重载减法操作符

技巧909理解抽象

技巧910为类分配一个指针

技巧911释放一个类指针

技巧912理解封装

技巧913清除输入串中的头部空格

技巧914理解类库

技巧915在头文件中定义你的类

技巧916对类的成员函数使用inline关键字

技巧917初始化类对象数组

技巧918内嵌代码可以修改

技巧919公有、私有和保护部分的出现顺序并不重要

技巧920缺省情况下,每个成员是私有的

技巧921理解静态存储

技巧922用stdio同步I/O流操作

技巧924理解C++的输出流

技巧923理解C++的I/O流

技巧925理解C++的输入流

技巧926打开一个文件流

技巧927关闭一个文件流

技巧928读写文件流

技巧929检查文件操作的结果

技巧930将文件流操作结合在一起

技巧931完成二进制文件拷贝

技巧932控制文件流指针

技巧933理解字符串流

技巧934理解ends操作符

第十六章面向对象的C++

技巧935理解多态性

技巧936从其他对象中调用另一个对象

技巧938告诉编译器一个未声明的类

技巧937理解友员

技巧939声明类Reader为友员

技巧940省去class class—name语句

技巧941限制友员的访问

技巧942名字冲突与友员

技巧943理解继承性

技巧944理解基类和派生类

技巧945 C++中的继承性

技巧946派生一个类

技巧947理解基类和派生类的构造函数

技巧948理解被保护成员

技巧949使用被保护成员

技巧950何时需要保护

技巧951理解多重继承性

技巧952一个简单的多重继承性范例

技巧953构造函数的次序和基类

技巧954说明某一基类为私有

技巧955析构函数与多重继承性

技巧956基类与派生类的名字冲突

技巧957解决派生类和基类的名字冲突

技巧958重载<<操作符

技巧959互为友员

技巧960理解继承性

技巧961一个派生类可以成为其他类的基类

技巧962在派生类中使用被保护的成员

技巧963静态类数据

技巧964初始化静态数据成员

技巧965直接访问静态数据成员

技巧966静态私有数据成员

技巧967理解静态成员函数

技巧968直接访问公用静态函数

技巧969更有意义的类成员

技巧970类的嵌套

技巧972在方法函数中内嵌汇编语句

技巧971理解子类和超类

技巧973类的成员可以递归

技巧974理解this指针

技巧975 this指针是如何根据函数的不同而不同的

技巧976静态链接与动态链接的理解

技巧977指向类的指针

技巧978使用同一指针指向不同的类

技巧979同名基类和派生类成员在使用指针时的冲突

技巧980理解虚函数

技巧981实现多态性

技巧982理解纯虚函数

技巧983理解抽象类

技巧984重载cout的插入操作符

技巧985定义一个输出流的操作符

技巧987对类使用sizeof运算符

技巧986看一看iostream.h头文件

技巧988私有、公有和保护属性也能用于结构

技巧989理解类的数据转换

技巧990在一个构造函数中转换数据

技巧991将类赋给其它变量

技巧992用友员进行转换

技巧993确定操作符重载是否增加了程序的可读性

技巧994理解使用_withassign的I/O流

技巧995理解异常处理

技巧996理解模板

技巧997应用一个简单的模板

技巧998支持多种类型的模板

技巧999模板放在何处

技巧1000模板也能减少重复的类

技巧1001理解生成类


书查询(www.shuchaxun.com)本网页唯一编码:
0968f353ed680928c816dd0cf6128ee1#db2fbe32afe9f8629a1c5fe04365cc0e#39760548#10940165.zip