1993 ;;Quote: an array in BCPL is a pointer to storage for the array
|
1994 ;;Quote: in BCPL, the ith member of an array is *(Array+i) where * means indirection; also called Array[i] or i[Array]
|
1996 ;;Quote: in C, an array refers to the first element of the array, but a reference to an array is automatically converted to a pointer to the array
|
1998 ;;Quote: in C, '->' is shorthand for accessing a structure component via a dereferenced pointer
|
1998 ;;Quote: in C, a union type is large enough to contain either type; programmer must assure appropriate access
|
2000 ;;Quote: while a C function is not a variable [i.e., no function arrays], a pointer to a function is a first-class value
|
2000 ;;Quote: in C, types are specified by expressions; it works well for simpler cases
|
2000 ;;Quote: in C, ornate types may be hard to interpret as a whole, but become understandable if read from inside out
|
2001 ;;Quote: in C, statements are just expressions followed by a semicolon; assignments are expression operators
|
2002 ;;Quote: in C, cases are just labels; individual cases are normally terminated by an explicit exit
|
2002 ;;Quote: C and BCPL's switch/case construction is very useful; but many other languages did not provide it
|
2002 ;;Quote: C's for statement is equivalent to a while statement in the appropriate format
|
2003 ;;Quote: C's for statement keeps all loop control components together at the top of the loop; e.g., a do loop
|
2003 ;;Quote: in C's for statement, the controlling variable retains its value after loop termination
|
2003 ;;Quote: C's break statement terminates the immediately enclosing while, for, do, or switch
|
2003 ;;Quote: C's continue statement initiates the next iteration of the immediately enclosing loop
|
2005 ;;Quote: C includes pre- and post-increment of a variable
|
2006 ;;Quote: C's && and || operators guarantee left-to-right, short-circuit evaluation; their predictable behavior is frequently used
|
2006 ;;Quote: C includes a conditional expression which is equivalent to an if..then..else
|
2007 ;;Quote: in C, all floating arithmetic is carried out in double precision
|
2007 ;;Quote: C's cast operator forces a conversion from one data type to another
|
2007 ;;Quote: a declaration in C announces the properties of a variable, while a definition declares a variable and allocates storage, or defines a function's code
|
2007 ;;Quote: in C, arguments are only passed by value; parameters are equivalent to conveniently initialized local variables
|
2007 ;;Quote: in C, an array argument is converted to a pointer; arrays are effectively passed by reference
|
2010 ;;Quote: in C, a static function or data is not visible to programs in other files
|
2010 ;;Quote: in C, defined constants are usually upper-case names to distinguish from variables
|
2011 ;;Quote: by defining constants via a macro processor, C allows any string of characters to be substituted
|
2011 ;;Quote: the C preprocessor expands an include statement into the named file's contents
|
2011 ;;Quote: C is restricted to tasks where a compiler is effective; all other tasks are relegated to subroutine libraries; greater flexibility
|
2014 ;;Quote: a limited language such as C is easier to program than an extensive language; also shorter manuals, easier training and adaptation
|
2014 ;;Quote: language design, especially by committees, includes doubtful features under the argument that they can be ignored by non-users
|
2014 ;;Quote: a programming language should avoid features which are hard to compile; if a statement is easy to write, it should be efficiently compiled
|
2014 ;;Quote: C does not include support for parallel programming because it would depend on the underlying operating system
|
2015 ;;Quote: C does not support input/output directly; if it did, it could automatically add type information to format statements
|
2015 ;;Quote: C does not check argument types against parameter types; can cause type errors; caught by 'lint'
|
2016 ;;Quote: C's lint program caches most type errors; misses union types and use of explicit escapes
|
2017 ;;Quote: C expressions can be overly terse; e.g., *++*argv
|
2017 ;;Quote: C's comment convention does not work well; e.g., do not nest
|
2017 ;;Quote: a better comment convention is comments from a unique character to the end of line
|