《Expert C Programming》简介:

For software engineers and computer programmers who are writing, developing, testing, debugging software on either IBM PCs or Unix systems. Written for experienced C programmers who want to quickly pick up some of the insights and techniques of experts and master the fine arts of ANSI C, this volume passes on the wisdom of a highly experienced C compiler writer and his colleagues to help programmers reach new heights, and avoid common software pitfalls along the way. Using an original approach and a humorous style that makes deep knowledge both easy and accessible, it gathers into one place, tips, hints, shortcuts, guidelines, ideas, idioms, heuristics, tools, anecdotes, C folklore, and techniques that are often penciled in margins and on backs of papers by those working in the programming trenches-working on many different kinds of projects, over many, many years.

《Expert C Programming》摘录:

char* s 与 const char* p 相容,char **s 与 const char** p却不相容? 要使上述的赋值合法,必须满足下列条件之一: 1. 两个操作数都是指向有限定符或者无限定符的相容类型的指针; 2. 左边指针所指向的类型必须具有右边指针指向类型的全部限定符; const限定符是修饰指针所指向的类似,而不是指针本身。 类似地,cost char**也是一个没有限定符的指针类型。它的类型是“指向有const限定符的char类型的指针 的指针”