List of Tables
Chapter 3. Everything is about control
Table 3.1. Scalar types used in this book
Chapter 4. Expressing computations
Table 4.1. Value operators The Form column gives the syntactic form of the operation, where @ represents the operator and
a and possibly b denote values that serve as operands. For arithmetic and bit operations, the type of the result is a type
that reconciles the types of a and b. For some of the operators, the Nick column gives an alternative form of the operator,
or lists a combination of operators that has special meaning. Most of the operators and terms will be discussed later.
Table 4.2. Object operators The Form column gives the syntactic form of the operation, where @ represents the operator, o
denotes an object, and a denotes a suitable additional value (if any) that serves as an operand. An additional * in the Type
column requires that the object o be addressable.
Table 4.3. Type operators These operators return an integer constant (ICE) of type size_t. They have function-like syntax
with the operands in parentheses.
Table 4.4. Logical operators
Chapter 5. Basic values and data
Table 5.1. Base types according to the four main type classes. Types with a gray background don’t allow for arithmetic; they
are promoted before doing arithmetic. Type char is special since it can be unsigned or signed, depending on the platform.
All types in this table are considered to be distinct types, even if they have the same class and precision.
Table 5.2. Some semantic arithmetic types for specialized use cases
Table 5.3. Examples for constants and their types. This is under the supposition that signed and unsigned have the commonly
used representation with 32 bits
Table 5.4. Bounds for scalar types used in this book
Table 5.5. Effects of bitwise operators
Table 5.6. Negation for 16-bit unsigned integer types
Chapter 8. C library functions
Table 8.1. C library headers
Table 8.2. Error return strategies for C library functions Some functions may also indicate a specific error condition through
the value of the errno macro.
Table 8.3. Mathematical functions In the electronic versions of the book, type-generic macros appear in red, and plain functions
in green.
Table 8.4. Modes and modifiers for fopen and freopen One of the first three must start the mode string, optionally followed
by one or more of the other three. See table 8.5 for all valid combinations.
Table 8.5. Mode strings for fopen and freopen These are the valid combinations of the characters in table 8.4.
Table 8.6. Format specifications for printf and similar functions, with the general syntax "%[FF][WW][.PP][LL]SS", where []
surrounding a field denotes that it is optional.
Table 8.7. Format specifiers for printf and similar functions
Table 8.8. Hexadecimal values and bit patterns
Table 8.9. Format modifiers for printf and similar functions float arguments are first converted to double.
Table 8.10. Format flags for printf and similar functions
Table 8.11. Character classifiers The third column indicates whether C implementations may extend these classes with platform-specific
characters, such as 'ä' as a lowercase character or '€' as punctuation.
Table 8.12. Special characters in character and string literals
Table 8.13. strftime format specifiers Those selected in the Locale column may differ dynamically according to locale runtime
settings; see section 8.6. Those selected in the ISO 8601 column are specified by that standard.
Table 8.14. Categories for the setlocale function
Chapter 9. Style
Table 9.1. Some examples of well and badly distinguishable identifiers
Chapter 13. Storage
Table 13.1. Storage classes, scope, linkage of identifiers, and storage duration of the associated objects Tentative indicates
that a definition is implied only if there is no other definition with an initializer. Induced indicates that the linkage
is internal if another declaration with internal linkage has been met prior to that declaration; otherwise, it is external.
Chapter 14. More involved processing and IO
Table 14.1. Format specifications for scanf and similar functions, with the general syntax [XX][WW][LL]SS
Table 14.2. Format specifiers for scanf and similar functions With an 'l' modifier, specifiers for characters or sets of characters
('c', 's', '[') transform multibyte character sequences on input to wide-character wchar_t arguments; see subection 14.3.
Table 14.3. Format modifiers for scanf and similar functions Note that the significance of float* and double* arguments is
different than for printf formats.
Chapter 15. Performance
Table 15.1. Comparison of measurements
Chapter 19. Atomic access and memory consistency
Table 19.1. C library functions that form synchronization pairs