Een project beschrijft een lijst van modules. De volgorde van de modules in de lijst bepaalt de volgorde bij
de vertaling door de C2 – compiler. De eerste module in de lijst wordt als eerste vertaald, dan de tweede
enz. tot aan de laatste module.
Samen met de ge ntegreerde ontwikkelingsomgeving worden talrijke bibliotheek – modules geleverd, die
b.v. functies voor de toegang tot systeem – resources van de C-Control II unit bevatten. In de praktijk
bestaat een project in eerste instantie uit een paar van deze bibliotheekmodules. Dan volgen in de lijst de
hergebruikbare gebruikersmodules, b.v. voor het implementeren van vaak benodigde algoritmes, zoals
gestandaardiseerde berekeningen van controletotalen of dergelijke. Aansluitend staan er modules met
een applicatie – specifieke code, b.v. voor het aansturen van een zeer concrete externe hardware. De
laatste modules in de lijst zijn in de regel de hoofdmodules. Ze bevatten onafhankelijke hoofd -threads
van het programma. De meeste toepassingen hebben slechts één hoofd –thread en daarom slechts één
hoofdmodule aan het eind van de module – lijst.
5.3 Syntax – Basiselementen
5.3.1 Commentaren
Zinvolle commentaren in een programma kunnen de begrijpelijkheid en leesbaarheid ervan verhogen.
C2- commentaren zijn compatible met die in C en C++. Er zijn commentaren aan het eind van een regel,
die door twee onmiddellijk op elkaar volgende schuine strepen // ingeleid worden. Alle tekst tot aan het
eind van de regel, inclusief de schuine strepen, wordt bij het compileren over het hoofd gezien.
b.v.:
a = 23; // dat is een commentaar
Commentaren bestaande uit meerdere regels kunnen in /*
b.v.:
/ *
dit alles
is een
*/
Geneste, uit meerdere regels bestaande, commentaren zijn niet toegestaan.
5.3.2 Spaties
Alle tekens met de ASCII codes 0 ... 32 worden als spaties (in het Engels "whitespace" of "blanks")
gelezen en bij het compileren overgeslagen, b.v. de spaties, tabstops en regelopschuiving in de brontekst
van het programma.
Dit geldt echter niet binnen string -constanten. Blanks in string -constanten blijven behouden en worden
zo uitgevoerd zoals ze zich in de brontekst bevinden.
5.3.3 Kenmerken
Kenmerken zijn de namen van modules, variabelen, constanten, meervoudige types, de velden, functies
en threads daarvan.
•
Een kenmerk bestaat uit minimaal één teken en kan willekeurig lang zijn
•
Geldige tekens van een kenmerk zijn letters (A ... Z, a ...z, geen umlauts of ß), cijfers (0 ... 9) en
onderliggende streep (_)
•
Het eerste teken mag geen cijfer zijn
•
C2 is case –sensitief, d.w.z. hoofd- en kleine letters worden onderscheiden – Abc, abc, aBc ...
zijn verschillende kenmerken
•
C2 – codewoorden zijn als kenmerk niet toegestaan.
Elk kenmerk moet bij de compiler bekend zijn voor het de eerste keer gebruikt wordt.
Dit laatste wil zeggen dat het verder naar boven in de module – brontekst of in een eerder vertaalde
module gedefinieerd moet zijn. Bij kenmerken die in een andere module voor die tijd gedefinieerd zijn,
moet zonder spatie de modulenaam en een punt ervoor gezet worden.
Voorbeeld:
Functie fx, gedefinieerd in modulebestand a.c2
function fx
( )
{
/ / . . .
}
commentaar
/ -sequenties ingebed worden.
24