Please feel free to link to this site to reference documentation on C functions, types, header files, etc.. Note, however, that the content is subject to occasional re-organization. If you want to be able to mechanically adapt to on-going changes to the site, you can fetch the text file export.tab, and process it to give you the latest details on where to find the description of an entity.

The file is divided into four parts, separated by lines containing only:

--

The first part describes mainly functions, types, constants, plus a few operators and directives. Each line is one record, with fields separated by |:

key|expansion|description|section-title|uri|anchor|flags

key identifies the entity, and is often the same as the entity being described, e.g., strlen is the key for strlen. expansion is the literal text to actually be displayed, in double-quoted Mokvino format. description describes the entity, while section-title is the title of the page or section specifying the entity, both also in Mokvino format. uri is the relative URI of the page specifying the entity, relative to here, and anchor is the # fragment identifier giving the section within the page (or blank if it's the whole page).

If you're not using Mokvino, you can probably just do some simple textual replacements on expansion, and ignore description and section-title. \u0023 is just a hash #. \u007c is | U+007C. \' is just a literal ' U+0027. \\ is a literal \ U+005C. 'wbr` can be replaced with <wbr>, a zero-width space U+200B, or just deleted. Characters like < are not specially encoded, so you'll have to escape them for HTML before you insert <wbr>.

The comma-separated flags are:

kwd
The entity is a keyword.
usr
The entity is user-defined.
pre
The entity is predefined, but not native to the language.
nat
The entity is native to the language.
qfy
The entity is a type-qualifier or type-specifier, i.e., it contributes to the specification of a type.
stc
The entity is a storage-class-specifier.
op
The entity is an operator.
pp
The entity is part of the preprocessor grammar.
mac
The entity is a macro.
dir
The entity is a preprocessing directive.
fn
The entity is a function, or a function-like macro, i.e., it takes an argument list.
opt
The entity is optionally defined.
typ
The entity is a type.

For example:

abort|abort|'iflang(``eo'', ``Abortigi programan rulon'', ``Abort program execution'')`|'iflang(``eo'', ``Programo-komencado kaj -finado'', ``Program start and termination'')`|lang/env.html|main|fn

The next section lists non-terminals in any part of the grammar. Each line has the following format:

key|expansion|section-title|uri|anchor

key identifies the non-terminal, and is usually identical to the English expansion. The other fields are as before.

For example:

argument-expression-list|'iflang(``eo'', ``argument-esprimo-listo'', ``argument-expression-list'')`|'iflang(``eo'', ``Funkcioj'', ``Functions'')`|lang/functions.html|

The next section lists standards:

key|short-name|full-name|uri|anchor

For example:

c99|C99|ISO/IEC 9899-1999|versions/std-c99.html|

The final section lists headers:

key|description|section-title|uri|anchor

key is also the core of the expansion. description is optional.

For example:

setjmp.h|'iflang(``eo'', ``Ne-lokaj saltoj'', ``Non-local jumps'')`|'iflang(``eo'', ``Lokaj kaj ne-lokaj saltoj'', ``Local and non-local jumps'')`|threads/jump.html|

CHaR
Sitemap Supported
Site format updated 2024-06-05T22:37:07.391+0000
Data updated 1970-01-01T00:00:00.000+0000
Page updated 2022-06-17T21:43:05.000+0000