emacs.d/info/c.info
2022-11-02 09:33:48 +01:00

359 lines
11 KiB
Text
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This is c.info, produced by makeinfo version 6.8 from c.texi.
Copyright © 2022 Richard Stallman and Free Software Foundation, Inc.
(The work of Trevis Rothwell and Nelson Beebe has been assigned or
licensed to the FSF.)
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License,
Version 1.3 or any later version published by the Free Software
Foundation; with the Invariant Sections being “GNU General Public
License,” with the Front-Cover Texts being “A GNU Manual,” and with
the Back-Cover Texts as in (a) below. A copy of the license is
included in the section entitled “GNU Free Documentation License.”
(a) The FSFs Back-Cover Text is: “You have the freedom to copy and
modify this GNU manual.”
INFO-DIR-SECTION Programming
START-INFO-DIR-ENTRY
* C: (c). GNU C Language Intro and Reference Manual
END-INFO-DIR-ENTRY

Indirect:
c.info-1: 966
c.info-2: 301107
c.info-3: 606017

Tag Table:
(Indirect)
Node: Top966
Node: The First Example23431
Node: Recursive Fibonacci24162
Node: Function Header27188
Node: Function Body27723
Node: Stack31269
Node: Iterative Fibonacci33328
Node: Complete Program39024
Node: Complete Example39813
Node: Complete Explanation40553
Node: Complete Line-by-Line43978
Node: Compile Example45535
Node: Storage47193
Node: Beyond Integers48225
Node: Float Example48772
Node: Array Example50564
Node: Array Example Call52825
Node: Array Example Variations55249
Node: Lexical Syntax57400
Node: English58379
Node: Characters60189
Ref: Characters-Footnote-161340
Node: Whitespace61462
Node: Comments63071
Node: Identifiers65791
Node: Operators/Punctuation67271
Node: Line Continuation69956
Node: Arithmetic71345
Node: Basic Arithmetic73657
Node: Integer Arithmetic74906
Node: Integer Overflow77400
Node: Unsigned Overflow78339
Node: Signed Overflow79548
Node: Mixed Mode81697
Node: Division and Remainder83057
Node: Numeric Comparisons85521
Node: Shift Operations86761
Node: Bits Shifted In87736
Node: Shift Caveats89098
Node: Shift Hacks90492
Node: Bitwise Operations91411
Node: Assignment Expressions94532
Node: Simple Assignment96917
Node: Lvalues98357
Node: Modifying Assignment99941
Node: Increment/Decrement101731
Node: Postincrement/Postdecrement103119
Node: Assignment in Subexpressions105450
Node: Write Assignments Separately106898
Node: Execution Control Expressions108122
Node: Logical Operators108817
Node: Logicals and Comparison110977
Node: Logicals and Assignments112230
Node: Conditional Expression113777
Node: Conditional Rules114281
Node: Conditional Branches115566
Node: Comma Operator117544
Node: Uses of Comma118225
Node: Clean Comma119223
Node: Avoid Comma120457
Node: Binary Operator Grammar121356
Ref: Binary Operator Grammar-Footnote-1124582
Node: Order of Execution124947
Node: Reordering of Operands125985
Node: Associativity and Ordering126856
Node: Sequence Points128448
Node: Postincrement and Ordering130274
Node: Ordering of Operands131702
Node: Optimization and Ordering133397
Node: Primitive Types134432
Node: Integer Types135262
Node: Basic Integers136195
Node: Signed and Unsigned Types137668
Ref: Signed and Unsigned Types-Footnote-1138826
Node: Narrow Integers139142
Node: Integer Conversion140573
Node: Boolean Type141957
Node: Integer Variations142464
Node: Floating-Point Data Types144272
Node: Complex Data Types146700
Ref: Complex Data Types-Footnote-1148743
Node: The Void Type148929
Node: Other Data Types149750
Node: Type Designators150537
Node: Constants152591
Node: Integer Constants153796
Node: Integer Const Type155521
Node: Floating Constants156947
Node: Imaginary Constants159111
Node: Invalid Numbers160708
Node: Character Constants161438
Node: String Constants164027
Node: UTF-8 String Constants167815
Node: Unicode Character Codes168683
Node: Wide Character Constants170262
Node: Wide String Constants172171
Node: Type Size174682
Node: Pointers177207
Node: Address of Data179251
Node: Pointer Types180229
Node: Pointer Declarations180792
Node: Pointer Type Designators182195
Node: Pointer Dereference183253
Node: Null Pointers184398
Node: Invalid Dereference185679
Node: Void Pointers186938
Node: Pointer Comparison189305
Node: Pointer Arithmetic190866
Node: Pointers and Arrays194597
Node: Low-Level Pointer Arithmetic196398
Node: Pointer Increment/Decrement198317
Node: Pointer Arithmetic Drawbacks201969
Node: Pointer-Integer Conversion203492
Node: Printing Pointers204744
Node: Structures205241
Node: Referencing Fields210228
Node: Arrays as Fields211642
Node: Dynamic Memory Allocation212528
Node: Field Offset214865
Node: Structure Layout215405
Node: Packed Structures217815
Node: Bit Fields218898
Node: Bit Field Packing220530
Node: const Fields222570
Node: Zero Length223864
Node: Flexible Array Fields224673
Node: Overlaying Structures226245
Node: Structure Assignment227573
Node: Unions229356
Node: Packing With Unions231810
Node: Cast to Union233573
Node: Structure Constructors234736
Node: Unnamed Types as Fields236271
Node: Incomplete Types237261
Node: Intertwined Incomplete Types238724
Node: Type Tags239641
Node: Arrays242311
Node: Accessing Array Elements243831
Node: Declaring an Array245512
Node: Strings247267
Node: Array Type Designators249837
Node: Incomplete Array Types250405
Node: Limitations of C Arrays251968
Node: Multidimensional Arrays254304
Node: Constructing Array Values257638
Node: Arrays of Variable Length258960
Node: Enumeration Types261597
Node: Defining Typedef Names264771
Node: Statements267486
Node: Expression Statement269511
Node: if Statement270722
Node: if-else Statement271552
Node: Blocks272467
Node: return Statement274965
Node: Loop Statements275796
Node: while Statement276897
Node: do-while Statement277905
Node: break Statement278610
Node: for Statement280143
Node: Example of for281195
Node: Omitted for-Expressions282342
Node: for-Index Declarations284161
Node: continue Statement285175
Node: switch Statement286683
Node: switch Example289267
Node: Duffs Device290782
Node: Case Ranges292018
Node: Null Statement292689
Node: goto Statement293266
Node: Local Labels297021
Node: Labels as Values301107
Ref: Labels as Values-Footnote-1301993
Node: Label Value Uses302189
Node: Label Value Caveats303470
Node: Statement Exprs304927
Node: Variables306986
Node: Variable Declarations309192
Node: Declaring Arrays and Pointers310758
Node: Combining Variable Declarations311934
Node: Initializers312885
Node: Designated Inits316041
Node: Auto Type318744
Node: Local Variables319962
Ref: Local Variables-Footnote-1321732
Node: File-Scope Variables321849
Node: Static Local Variables323205
Node: Extern Declarations324326
Node: Allocating File-Scope326347
Node: auto and register328072
Node: Omitting Types328901
Node: Type Qualifiers329364
Node: const330468
Node: volatile332740
Node: restrict Pointers334903
Node: restrict Pointer Example336560
Node: Functions338593
Node: Function Definitions339572
Node: Function Parameter Variables340588
Node: Forward Function Declarations343147
Node: Static Functions344082
Node: Arrays as Parameters345356
Node: Array Parm Pointer345835
Node: Passing Array Args347045
Node: Array Parm Qualifiers349332
Node: Structs as Parameters350843
Node: Function Declarations352328
Node: Function Calls356092
Node: Function Call Semantics357441
Node: Function Pointers359065
Node: Declaring Function Pointers360056
Node: Assigning Function Pointers362199
Node: Calling Function Pointers363232
Node: The main Function364155
Node: Values from main365796
Node: Command-line Parameters367017
Node: Environment Variables368391
Node: Advanced Definitions369884
Node: Variable-Length Array Parameters370566
Node: Variable Number of Arguments372747
Node: Nested Functions376852
Node: Inline Function Definitions381507
Node: Obsolete Definitions385572
Node: Old GNU Inlining386045
Node: Old-Style Function Definitions387019
Node: Compatible Types388983
Ref: Compatible Types-Footnote-1391619
Node: Type Conversions391654
Node: Explicit Type Conversion392324
Node: Assignment Type Conversions393928
Node: Argument Promotions395717
Ref: Argument Promotions-Footnote-1396765
Node: Operand Promotions396989
Node: Common Type397589
Node: Scope398823
Node: Preprocessing401896
Node: Preproc Overview402345
Node: Directives403956
Node: Preprocessing Tokens405496
Node: Header Files409739
Node: include Syntax411922
Node: include Operation413815
Node: Search Path415701
Node: Once-Only Headers418319
Node: Computed Includes420061
Node: Macros423253
Node: Object-like Macros424542
Node: Function-like Macros428510
Node: Macro Arguments430887
Node: Stringification435195
Node: Concatenation438515
Node: Variadic Macros442028
Ref: Variadic Macros-Footnote-1446025
Ref: Variadic Macros-Footnote-2446050
Node: Predefined Macros446075
Node: Undefining and Redefining Macros453231
Node: Directives Within Macro Arguments455132
Node: Macro Pitfalls456091
Node: Misnesting456627
Node: Operator Precedence Problems457749
Node: Swallowing the Semicolon459645
Node: Duplication of Side Effects461725
Node: Macros and Auto Type463843
Node: Self-Referential Macros465113
Node: Argument Prescan467575
Node: Conditionals471398
Node: Conditional Uses473127
Node: Conditional Syntax474535
Node: ifdef474903
Node: if478265
Node: defined480779
Node: else482158
Node: elif482786
Node: Deleted Code484229
Node: Diagnostics485537
Node: Line Control486749
Node: Null Directive489032
Node: Integers in Depth489319
Node: Integer Representations489779
Ref: Integer Representations-Footnote-1494016
Node: Maximum and Minimum Values494179
Node: Floating Point in Depth495867
Node: Floating Representations496506
Node: Floating Type Specs498302
Node: Special Float Values499709
Ref: subnormal numbers501877
Node: Invalid Optimizations503802
Node: Exception Flags505303
Ref: fetestexcept506132
Node: Exact Floating-Point506649
Node: Rounding507714
Node: Rounding Issues509866
Node: Significance Loss511288
Node: Fused Multiply-Add514389
Node: Error Recovery516312
Node: Exact Floating Constants519246
Node: Handling Infinity521325
Node: Handling NaN523177
Node: Signed Zeros526440
Node: Scaling by the Base527160
Node: Rounding Control528504
Node: Machine Epsilon530199
Node: Complex Arithmetic535325
Node: Round-Trip Base Conversion538984
Node: Further Reading541123
Node: Compilation548852
Node: Directing Compilation551829
Node: Pragmas552298
Node: Pragma Basics552676
Node: Severity Pragmas556793
Node: Optimization Pragmas559425
Node: Static Assertions561782
Node: Type Alignment563630
Node: Aliasing566801
Node: Aliasing Alignment568375
Node: Aliasing Length569390
Node: Aliasing Type Rules570396
Node: Digraphs574304
Node: Attributes574950
Node: Signals577987
Node: GNU Free Documentation License579704
Node: Symbol Index606017
Node: Concept Index613933

End Tag Table

Local Variables:
coding: utf-8
End: