出版社: Prentice Hall
副标题: -
出版年: 1988-4-1
页数: 274
定价: USD 67.00
装帧: Paperback
ISBN: 9780131103627
内容简介 · · · · · ·
Presents a complete guide to ANSI standard C language programming. Written by the developers of C, this new version helps readers keep up with the finalized ANSI standard for C while showing how to take advantage of C's rich set of operators, economy of expression, improved control flow, and data structures. This 2nd edition has been completely rewritten with additional example...
Presents a complete guide to ANSI standard C language programming. Written by the developers of C, this new version helps readers keep up with the finalized ANSI standard for C while showing how to take advantage of C's rich set of operators, economy of expression, improved control flow, and data structures. This 2nd edition has been completely rewritten with additional examples and problem sets to clarify the implementation of difficult language constructs. 7 x 9 1/4.
作者简介 · · · · · ·
Brian W. Kernighan works in the Computing Science Research Center at Bell Laboratories, Lucent Technologies. He is Consulting Editor for Addison-Wesley's Professional Computing Series and the author, with Dennis Ritchie, of The C Programming Language.
Dennis Ritchie is a computer scientist notable for his influence on ALTRAN, B, BCPL, C, Multics, and Unix.
喜欢读"The C Programming Language"的人也喜欢的电子书 · · · · · ·
喜欢读"The C Programming Language"的人也喜欢 · · · · · ·
The C Programming Language的话题 · · · · · · ( 全部 条 )



The C Programming Language的书评 · · · · · · ( 全部 83 条 )
> 更多书评83篇
-
RednaxelaFX (Script Ahead, Code Behind)
这就是implicit function declaration的规定啊: If a name that has not been previously declared occurs in an expression and is followed by a left parenthesis, it is declared by context to be a function name, the function is assumed to return an int, and nothing is assumed about its arguments. Furthermore, if a function declaration does not include arguments, as in double atof(); that too ...2016-12-20 06:25 1人喜欢
这就是implicit function declaration的规定啊:If a name that has not been previously declared occurs in an expression and is followed by a left parenthesis, it is declared by context to be a function name, the function is assumed to return an int, and nothing is assumed about its arguments. Furthermore, if a function declaration does not include arguments, as in double atof(); that too is taken to mean that nothing is to be assumed about the arguments of atof; all parameter checking is turned off. This special meaning of the empty argument list is intended to permit older C programs to compile with new compilers. But it’s a bad idea to use it with new programs. If the function takes arguments, declare them; if it takes no arguments, use void.
回应 2016-12-20 06:25 -
southstarj (你丫扯淡)
这一章的收获很大 be lumped with = put together cryptic = secret, hidden meaning lexicographically a.字典序的 cavalier a.随便的,傲慢的 [note_1] /代码内容已省略/ *t++ <==> *t, t++; [note_2]arithmetics for pointers: best use within one array, otherwise it will go wrong, badly. /代码内容已省略/ [note_3]Multi-dimen...2013-01-29 22:18 1人喜欢
这一章的收获很大be lumped with = put togethercryptic = secret, hidden meaninglexicographically a.字典序的cavalier a.随便的,傲慢的[note_1](*px)++; // 表示px指向的数加1 *px++; // 表示px的下一个地址(数组的下一个元素)的值
*t++ <==> *t, t++;[note_2]arithmetics for pointers:best use within one array, otherwise it will go wrong, badly.type *p; p+n; /* n = 1 for char(8bt), 2 for int&short(16b), 3 for long&float(32b), 4 for double(64b) */ p++; // no type restrictions /* on PDP-11; other kind of arithmetic operations(comparison, etc.) are illegal */
[note_3]Multi-dimensional arraysint day_tab[2][13]; <==>int day_tab[][13]; <==>int (*day_tab)[13]; // 数组指针(int [13]的指针) <X=>int *day_tab[13]; // 这个表示指针数组(int* 的数组)
上面是非常重要的一个概念,说明[]的优先级高于*[note_4]5.9节的例子static var在function中permanent exist,无论调用多少次[note_5]5.11 command line argsmain() int argc; //参数个数 char *argv[]; //字符串数组 { ... }
(*++argv)[0]的解析:argv: pointer, 指向一个pointer数组,其中的每个元素(pointer)表示一个字符串++argv: pointer, 指向argv的下一个元素(pointer)*++argv: <==>*(++argv), 表示取出这个pointer的值(一个地址,代表一个字符串,仍然是一个pointer)(*++argv)[0]: 表示这个字符串中第1个元素(char),也可以表示成*(*++argv)回应 2013-01-29 22:18 -
A word of caution: newcomers to C occasionally write = when they mean ==. As we will see in Chapter 2, the result is usually a legal expression, so you will get no warning. 一个好的习惯是把常量放在左边,如 /代码内容已省略/ 这样,当你把`==`误写为`=`的时候,编译器会报错。
2017-02-04 13:48
-
We are now going to consider a family of related programs for processing character data. You will find that many programs are just expanded versions of the prototypes that we discuss here. 字符或者字符串操作算是使用C所能做到的最简单而有趣的事情。因为C当中的字符串并非immutable,所以给了我们可以操作字符串中单个字符的机会,这就可以做一些有趣的算法了。
2017-02-04 12:24
-
竹林 (给生活加点糖~~)
这是一本学习C语言的必读书籍,堪称经典。 我读的是电子版,chm格式的,所以没有页码,本文的页码指的是chapter。 第一章是概念性的介绍,从最经典的“Hello Word!”开始,到变量与算术表达式,数据类型,表达式,符号常量,字符的输入和输出,数组,函数,参数传递(值传递),字符数组,外部变量和作用域,并且包含了很多的练习题。 通过这些基础知识,作者把C语言的功能娓娓道来,深入浅出。本人学习C语言也有很长一段...2011-04-14 22:54
这是一本学习C语言的必读书籍,堪称经典。我读的是电子版,chm格式的,所以没有页码,本文的页码指的是chapter。第一章是概念性的介绍,从最经典的“Hello Word!”开始,到变量与算术表达式,数据类型,表达式,符号常量,字符的输入和输出,数组,函数,参数传递(值传递),字符数组,外部变量和作用域,并且包含了很多的练习题。通过这些基础知识,作者把C语言的功能娓娓道来,深入浅出。本人学习C语言也有很长一段时间了,也写过一些代码,但是对一些细节问题还是有些模棱两可,而对C语言的掌握是需要很细致的,否则在调试一些代码或者BUG的时候是很痛苦的。为此,我在读这本书的同时,也同步做了一些练习,有些是书上的,有些是自己觉得很重要的,这些代码都放在了google code上,欢迎大家访问指正。代码地址:http://code.google.com/p/tcpl/回应 2011-04-14 22:54 -
We want to get you as quickly as possible to the point where you can write useful programs, and to do that we have to concentrate on the basics: variables and constants, arithmetic, control flow, functions, and the rudiments of input and output. We are intentionally leaving out of this chapter features of C that are important for writing bigger programs. 一本理想的教授编程语言的书就应该以这种方式...
2017-02-04 10:31
一本理想的教授编程语言的书就应该以这种方式编写:一开始就把最基本、最重要的内容拿上来,简单讲述,把细节留到后面章节再讲;应该以完整而且有趣的例子展示语言的内容,而不是唠唠叨叨陈述概念。We want to get you as quickly as possible to the point where you can write useful programs, and to do that we have to concentrate on the basics: variables and constants, arithmetic, control flow, functions, and the rudiments of input and output. We are intentionally leaving out of this chapter features of C that are important for writing bigger programs.
回应 2017-02-04 10:31 -
Exquisiteness (catyun)
C was originally designed for and implemented on the UNIX operating system on the DEC PDP-11, by Dennis Ritchie. The operating system, the C compiler, and essentially all UNIX applications programs (including all of the software used to prepare this book) are written in C. Production compilers also exist for several other machines, including the IBM System/370, the Honeywell 6000, and the Inte...2015-01-08 14:37
C was originally designed for and implemented on the UNIX operating system on the DEC PDP-11, by Dennis Ritchie. The operating system, the C compiler, and essentially all UNIX applications programs (including all of the software used to prepare this book) are written in C. Production compilers also exist for several other machines, including the IBM System/370, the Honeywell 6000, and the Interdata 8/32. C is not tied to any particular hardware or system, however, and it is easy to write programs that will run without change on any machine that supports C.
回应 2015-01-08 14:37 -
Exquisiteness (catyun)
1.1 解释 #include <stdio.h> main() { printf("hello, world\n"); } Functions, variables Function: main() 这里没有variables Functions Normally you are at liberty to give functions whatever names you like, but ``main'' is special - your program begins executing at the beginning of main. This means that every program must have a main somewhere. main will usual...2015-01-23 11:00
1.1解释#include <stdio.h>main(){ printf("hello, world\n");}Functions, variablesFunction: main() 这里没有variables
The standard libraryArgumentsFunctions Normally you are at liberty to give functions whatever names you like, but ``main'' is special - your program begins executing at the beginning of main. This means that every program must have a main somewhere. main will usually call other functions to help perform its job, some that you wrote, and others from libraries that are provided for you.
回应 2015-01-23 11:00
-
A word of caution: newcomers to C occasionally write = when they mean ==. As we will see in Chapter 2, the result is usually a legal expression, so you will get no warning. 一个好的习惯是把常量放在左边,如 /代码内容已省略/ 这样,当你把`==`误写为`=`的时候,编译器会报错。
2017-02-04 13:48
-
We are now going to consider a family of related programs for processing character data. You will find that many programs are just expanded versions of the prototypes that we discuss here. 字符或者字符串操作算是使用C所能做到的最简单而有趣的事情。因为C当中的字符串并非immutable,所以给了我们可以操作字符串中单个字符的机会,这就可以做一些有趣的算法了。
2017-02-04 12:24
-
We want to get you as quickly as possible to the point where you can write useful programs, and to do that we have to concentrate on the basics: variables and constants, arithmetic, control flow, functions, and the rudiments of input and output. We are intentionally leaving out of this chapter features of C that are important for writing bigger programs. 一本理想的教授编程语言的书就应该以这种方式...
2017-02-04 10:31
一本理想的教授编程语言的书就应该以这种方式编写:一开始就把最基本、最重要的内容拿上来,简单讲述,把细节留到后面章节再讲;应该以完整而且有趣的例子展示语言的内容,而不是唠唠叨叨陈述概念。We want to get you as quickly as possible to the point where you can write useful programs, and to do that we have to concentrate on the basics: variables and constants, arithmetic, control flow, functions, and the rudiments of input and output. We are intentionally leaving out of this chapter features of C that are important for writing bigger programs.
回应 2017-02-04 10:31 -
RednaxelaFX (Script Ahead, Code Behind)
这就是implicit function declaration的规定啊: If a name that has not been previously declared occurs in an expression and is followed by a left parenthesis, it is declared by context to be a function name, the function is assumed to return an int, and nothing is assumed about its arguments. Furthermore, if a function declaration does not include arguments, as in double atof(); that too ...2016-12-20 06:25 1人喜欢
这就是implicit function declaration的规定啊:If a name that has not been previously declared occurs in an expression and is followed by a left parenthesis, it is declared by context to be a function name, the function is assumed to return an int, and nothing is assumed about its arguments. Furthermore, if a function declaration does not include arguments, as in double atof(); that too is taken to mean that nothing is to be assumed about the arguments of atof; all parameter checking is turned off. This special meaning of the empty argument list is intended to permit older C programs to compile with new compilers. But it’s a bad idea to use it with new programs. If the function takes arguments, declare them; if it takes no arguments, use void.
回应 2016-12-20 06:25
在哪儿借这本书 · · · · · ·
这本书的其他版本 · · · · · · ( 全部10 )
以下豆列推荐 · · · · · · ( 全部 )
- 豆瓣高分书2700本:千人打分不低于8分 (偶就是那个鬼)
- 程序员必读经典书籍 (Felven)
- 1000+条豆瓣评价9.0以上的书 (Sheryl)
- 程序员最应该读的图书(原版) (hongqn)
- 【C/C++学习指南】 (小李飞刀)
谁读这本书?
二手市场
订阅关于The C Programming Language的评论:
feed: rss 2.0
0 有用 听临 2012-12-29
虽然从来没有用C开发过什么东西~~
3 有用 征夷小将军茂茂 2013-05-18
让人看得痛哭流涕的好书!
0 有用 southstarj 2013-01-29
虽然已经学过C,但是这本仍然值得仔细阅读,讲得非常清楚,解释的都是非常核心的概念。而且例子写得非常用心,将标准库函数中常见的函数实现都给出讲解。习题对初学者略难,可以参看习题解答一书作为补充。
0 有用 陰陽糊 2013-09-01
不愧是大师们写的书 每一个例子都是经典中的经典 虽然读这本书仅仅是为了查缺补漏 但依然觉得收获颇丰 开卷有益
0 有用 Gosin 2011-03-13
找了个英文版的PDF,希望这个暑假能读完。
1 有用 lucky-girl 2018-12-14
This is a really good introduction to C programming language with clear and concise explanations.
0 有用 ghost_memory 2018-11-27
这个才是科班同学最应该看的C语言教材
0 有用 黑蛋 2018-10-04
记得大一还是大二的时候看了一半就看不下去了。这次看到第七章才开始有点痛苦,第八章本来想放弃,但还是硬着头皮看了几遍,把大概的思路弄懂了。这本书不是用来入门(例子普遍很难,不通俗),但很适合用来巩固C语言基础。看的时候还不断Google看博客,总结了很多笔记。书中虽然提到内存对齐,但没有具体地讲规则,需要自己去搜。
0 有用 人間體 2018-12-18
再读
0 有用 laissera 2018-09-06
需要时常翻出来读一读