您好,欢迎光临本网站![请登录][注册会员]  
文件名称: The_C_Programming_Laugage(K&R)
  所属分类: C
  开发工具:
  文件大小: 1mb
  下载次数: 0
  上传时间: 2011-10-25
  提 供 者: lzgmi*****
 详细说明: 经典的C语言教程,由Brian W. Kernighan 和 Dennis M. Ritchie编写,俗称K&R。此为第二版,目录如下: Preface........................................................................................................................................ 6 Preface to the first edition .......................................................................................................... 8 Chapter 1 - A Tutorial Introduction ........................................................................................... 9 1.1 Getting Started............................ ...................................................................................... 9 1.2 Variables and Arithmetic Expressions ........................................................................... 11 1.3 The for statement............................................................................................................ 16 1.4 Symbolic Constants........................................................................................................ 17 1.5 Character Input and Output ............................................................................................ 18 1.5.1 File Copying............................................................................................................ 18 1.5.2 Character Counting ................................................................................................. 20 1.5.3 Line Counting.......................................................................................................... 21 1.5.4 Word Counting........................................................................................................ 22 1.6 Arrays ............................................................................................................................. 23 1.7 Functions ........................................................................................................................ 25 1.8 Arguments - Call by Value............................................................................................. 28 1.9 Character Arrays ............................................................................................................ 29 1.10 External Variables and Scope ...................................................................................... 31 Chapter 2 - Types, Operators and Expressions ........................................................................ 35 2.1 Variable Names .............................................................................................................. 35 2.2 Data Types and Sizes ..................................................................................................... 35 2.3 Constants ........................................................................................................................ 36 2.4 Declarations.................................................................................................................... 39 2.5 Arithmetic Operators...................................................................................................... 40 2.6 Relational and Logical Operators................................................................................... 40 2.7 Type Conversions........................................................................................................... 41 2.8 Increment and Decrement Operators.............................................................................. 44 2.9 Bitwise Operators........................................................................................................... 46 2.10 Assignment Operators and Expressions....................................................................... 47 2.11 Conditional Expressions............................................................................................... 49 2.12 Precedence and Order of Evaluation............................................................................ 49 Chapter 3 - Control Flow ......................................................................................................... 52 3.1 Statements and Blocks ................................................................................................... 52 3.2 If-Else ............................................................................................................................. 52 3.3 Else-If ............................................................................................................................. 53 3.4 Switch............................................................................................................................. 54 3.5 Loops - While and For ................................................................................................... 56 3.6 Loops - Do-While........................................................................................................... 58 3.7 Break and Continue........................................................................................................ 59 3.8 Goto and labels............................................................................................................... 60 Chapter 4 - Functions and Program Structure.......................................................................... 62 4.1 Basics of Functions ........................................................................................................ 62 4.2 Functions Returning Non-integers ................................................................................. 65 4.3 External Variables .......................................................................................................... 67 4.4 Scope Rules .................................................................................................................... 72 4.5 Header Files.................................................................................................................... 73 4.6 Static Variables .............................................................................................................. 75 4.7 Register Variables .......................................................................................................... 75 4.8 Block Structure............................................................................................................... 76 4.9 Initialization ................................................................................................................... 76 4.10 Recursion...................................................................................................................... 78 4.11 The C Preprocessor ...................................................................................................... 79 3 4.11.1 File Inclusion......................................................................................................... 79 4.11.2 Macro Substitution ................................................................................................ 80 4.11.3 Conditional Inclusion ............................................................................................ 82 Chapter 5 - Pointers and Arrays ............................................................................................... 83 5.1 Pointers and Addresses................................................................................................... 83 5.2 Pointers and Function Arguments .................................................................................. 84 5.3 Pointers and Arrays ........................................................................................................ 87 5.4 Address Arithmetic ........................................................................................................ 90 5.5 Character Pointers and Functions................................................................................... 93 5.6 Pointer Arrays; Pointers to Pointers ............................................................................... 96 5.7 Multi-dimensional Arrays .............................................................................................. 99 5.8 Initialization of Pointer Arrays..................................................................................... 101 5.9 Pointers vs. Multi-dimensional Arrays......................................................................... 101 5.10 Command-line Arguments ......................................................................................... 102 5.11 Pointers to Functions.................................................................................................. 106 5.12 Complicated Declarations .......................................................................................... 108 Chapter 6 - Structures............................................................................................................. 114 6.1 Basics of Structures...................................................................................................... 114 6.2 Structures and Functions .............................................................................................. 116 6.3 Arrays of Structures ..................................................................................................... 118 6.4 Pointers to Structures ................................................................................................... 122 6.5 Self-referential Structures ............................................................................................ 124 6.6 Table Lookup ............................................................................................................... 127 6.7 Typedef......................................................................................................................... 129 6.8 Unions .......................................................................................................................... 131 6.9 Bit-fields....................................................................................................................... 132 Chapter 7 - Input and Output.................................................................................................. 135 7.1 Standard Input and Output ........................................................................................... 135 7.2 Formatted Output - printf ............................................................................................. 137 7.3 Variable-length Argument Lists................................................................................... 138 7.4 Formatted Input - Scanf................................................................................................ 140 7.5 File Access ................................................................................................................... 142 7.6 Error Handling - Stderr and Exit .................................................................................. 145 7.7 Line Input and Output .................................................................................................. 146 7.8 Miscellaneous Functions .............................................................................................. 147 7.8.1 String Operations................................................................................................... 147 7.8.2 Character Class Testing and Conversion .............................................................. 148 7.8.3 Ungetc ................................................................................................................... 148 7.8.4 Command Execution............................................................................................. 148 7.8.5 Storage Management............................................................................................. 148 7.8.6 Mathematical Functions ........................................................................................ 149 7.8.7 Random Number generation ................................................................................. 149 Chapter 8 - The UNIX System Interface................................................................................ 151 8.1 File Descriptors ............................................................................................................ 151 8.2 Low Level I/O - Read and Write.................................................................................. 152 8.3 Open, Creat, Close, Unlink .......................................................................................... 153 8.4 Random Access - Lseek ............................................................................................... 155 8.5 Example - An implementation of Fopen and Getc....................................................... 156 8.6 Example - Listing Directories ...................................................................................... 159 8.7 Example - A Storage Allocator .................................................................................... 163 Appendix A - Reference Manual ........................................................................................... 168 A.1 Introduction ................................................................................................................. 168 4 A.2 Lexical Conventions.................................................................................................... 168 A.2.1 Tokens .................................................................................................................. 168 A.2.2 Comments............................................................................................................. 168 A.2.3 Identifiers.............................................................................................................. 168 A.2.4 Keywords.............................................................................................................. 169 A.2.5 Constants .............................................................................................................. 169 A.2.6 String Literals ....................................................................................................... 171 A.3 Syntax Notation........................................................................................................... 171 A.4 Meaning of Identifiers ................................................................................................. 171 A.4.1 Storage Class ........................................................................................................ 171 A.4.2 Basic Types .......................................................................................................... 172 A.4.3 Derived types........................................................................................................ 173 A.4.4 Type Qualifiers..................................................................................................... 173 A.5 Objects and Lvalues .................................................................................................... 173 A.6 Conversions ................................................................................................................. 173 A.6.1 Integral Promotion................................................................................................ 174 A.6.2 Integral Conversions............................................................................................. 174 A.6.3 Integer and Floating.............................................................................................. 174 A.6.4 Floating Types...................................................................................................... 174 A.6.5 Arithmetic Conversions........................................................................................ 174 A.6.6 Pointers and Integers ............................................................................................ 175 A.6.7 Void...................................................................................................................... 176 A.6.8 Pointers to Void.................................................................................................... 176 A.7 Expressions.................................................................................................................. 176 A.7.1 Pointer Conversion............................................................................................... 177 A.7.2 Primary Expressions............................................................................................. 177 A.7.3 Postfix Expressions .............................................................................................. 177 A.7.4 Unary Operators ................................................................................................... 179 A.7.5 Casts ..................................................................................................................... 181 A.7.6 Multiplicative Operators....................................................................................... 181 A.7.7 Additive Operators ............................................................................................... 182 A.7.8 Shift Operators ..................................................................................................... 182 A.7.9 Relational Operators............................................................................................. 183 A.7.10 Equality Operators.............................................................................................. 183 A.7.11 Bitwise AND Operator....................................................................................... 183 A.7.12 Bitwise Exclusive OR Operator ......................................................................... 184 A.7.13 Bitwise Inclusive OR Operator .......................................................................... 184 A.7.14 Logical AND Operator....................................................................................... 184 A.7.15 Logical OR Operator .......................................................................................... 184 A.7.16 Conditional Operator.......................................................................................... 184 A.7.17 Assignment Expressions..................................................................................... 185 A.7.18 Comma Operator ................................................................................................ 185 A.7.19 Constant Expressions ......................................................................................... 186 A.8 Declarations................................................................................................................. 186 A.8.1 Storage Class Specifiers ....................................................................................... 187 A.8.2 Type Specifiers..................................................................................................... 188 A.8.3 Structure and Union Declarations ........................................................................ 188 A.8.4 Enumerations........................................................................................................ 191 A.8.5 Declarators............................................................................................................ 192 A.8.6 Meaning of Declarators ........................................................................................ 193 A.8.7 Initialization.......................................................................................................... 196 A.8.8 Type names........................................................................................................... 198 5 A.8.9 Typedef................................................................................................................. 199 A.8.10 Type Equivalence ............................................................................................... 199 A.9 Statements ................................................................................................................... 199 A.9.1 Labeled Statements............................................................................................... 200 A.9.2 Expression Statement ........................................................................................... 200 A.9.3 Compound Statement ........................................................................................... 200 A.9.4 Selection Statements............................................................................................. 201 A.9.5 Iteration Statements.............................................................................................. 201 A.9.6 Jump statements ................................................................................................... 202 A.10 External Declarations ................................................................................................ 203 A.10.1 Function Definitions........................................................................................... 203 A.10.2 External Declarations ......................................................................................... 204 A.11 Scope and Linkage .................................................................................................... 205 A.11.1 Lexical Scope ..................................................................................................... 205 A.11.2 Linkage............................................................................................................... 206 A.12 Preprocessing............................................................................................................. 206 A.12.1 Trigraph Sequences ............................................................................................ 207 A.12.2 Line Splicing ...................................................................................................... 207 A.12.3 Macro Definition and Expansion ....................................................................... 207 A.12.4 File Inclusion...................................................................................................... 209 A.12.5 Conditional Compilation .................................................................................... 210 A.12.6 Line Control ....................................................................................................... 211 A.12.7 Error Generation................................................................................................. 211 A.12.8 Pragmas .............................................................................................................. 212 A.12.9 Null directive...................................................................................................... 212 A.12.10 Predefined names ............................................................................................. 212 A.13 Grammar.................................................................................................................... 212 Appendix B - Standard Library.............................................................................................. 220 B.1 Input and Output: ........................................................................................ 220 B.1.1 File Operations ..................................................................................................... 220 B.1.2 Formatted Output.................................................................................................. 222 B.1.3 Formatted Input .................................................................................................... 223 B.1.4 Character Input and Output Functions.................................................................. 225 B.1.5 Direct Input and Output Functions ....................................................................... 225 B.1.6 File Positioning Functions .................................................................................... 226 B.1.7 Error Functions ..................................................................................................... 226 B.2 Character Class Tests: ................................................................................ 226 B.3 String Functions: ........................................................................................ 227 B.4 Mathematical Functions: ............................................................................. 228 B.5 Utility Functions: ....................................................................................... 229 B.6 Diagnostics: ................................................................................................ 231 B.7 Variable Argument Lists: .......................................................................... 231 B.8 Non-local Jumps: ...................................................................................... 232 B.9 Signals: ...................................................................................................... 232 B.10 Date and Time Functions: .......................................................................... 233 B.11 Implementation-defined Limits: and ............................................................................................................................................ 234 Appendix C - Summary of Changes ...................................................................................... 236 ...展开收缩
(系统自动生成,下载前可以参看下载内容)

下载文件列表

相关说明

  • 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
  • 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度
  • 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
  • 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
  • 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
  • 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.
 相关搜索: C语言
 输入关键字,在本站1000多万海量源码库中尽情搜索: