C-tokens, trefwoorden en identificatoren: typen en voorbeelden

⚡ Slimme samenvatting

Tokens in C zijn de kleinste afzonderlijke eenheden die de compiler leest, en elk C-programma is opgebouwd uit zes soorten tokens: trefwoorden, identificatoren, constanten, tekenreeksen, operatoren en speciale symbolen uit de C-tekenset.

  • 🔤 Karakterset: C-broncode gebruikt letters, cijfers, spaties en speciale tekens die samen elk token en symbool vormen.
  • 🧩 Zes soorten tokens: De compiler splitst een programma op in trefwoorden, identificatoren, constanten, tekenreeksen, operatoren en speciale symbolen.
  • 🔑 sleutelwoorden: C reserveert 32 kleinelettersleutelwoorden zoals int, for en return, die elk een vaste betekenis hebben die je niet kunt herdefiniëren.
  • ???? ️ ID's: Gebruikersgedefinieerde namen voor variabelen en functies moeten beginnen met een letter of een underscore en mogen geen gereserveerde trefwoorden bevatten.
  • 🔢 Constanten en tekenreeksen: Constanten bevatten vaste waarden, terwijl tekenreeksliteralen tekens groeperen tussen dubbele aanhalingstekens, eindigend met een null-teken.
  • 🤖 AI-assistentie: GitHub Copilot en vergelijkbare tools suggereren geldige identificatoren, signaleren conflicten tussen trefwoorden en versnellen het coderen in C.

C-tokens, identificatoren en trefwoorden

Wat is een tekenset in C?

Net als elke andere programmeertaal heeft C ook een eigen tekenset. Een programma is een reeks instructies die, wanneer ze worden uitgevoerd, een uitvoer genereren. De gegevens die door een programma worden verwerkt, bestaan ​​uit verschillende tekens en symbolen. De gegenereerde uitvoer is eveneens een combinatie van tekens en symbolen.

Een tekenset in C is onderverdeeld in:

  • Post
  • Numbers
  • Speciale karakters
  • Witte ruimtes (lege ruimtes)

Een compiler negeert doorgaans het gebruik van tekens, maar deze worden veelvuldig gebruikt voor het formatteren van gegevens. Hieronder volgt de tekenset die in C-programmering wordt gebruikt:

1) Brieven

  • Hoofdletters (AZ)
  • Kleine letters (az)

2) Numbers

  • Alle cijfers van 0 tot en met 9

3) Witruimtes

  • Lege ruimte
  • Nieuwe lijn
  • Vervoer terug
  • Horizontaal tabblad

4) Speciale tekens

Speciale tekens in C worden weergegeven in de onderstaande tabel:

Speciaal karakter Beschrijving
, (komma) { (accolade openen)
. (periode) } (accolade sluiten)
; (puntkomma) [ (linker haakje)
: (dubbele punt) ] (rechter haakje)
? (vraagteken) ((linker haakje openen)
' (apostrof) ) (rechter haakje sluiten)
"(dubbele aanhalingstekens) & (ampersand)
! (uitroepteken) ^ (dakje)
|(verticale balk) + (toevoeging)
/ (schuine streep naar voren) – (subtracion)
\ (achterwaartse schuine streep) * (vermenigvuldiging)
~ (tilde) / (divisie)
_ (laag streepje) > (groter dan of sluitende hoekbeugel)
$ (dollarteken) < (kleiner dan of openingshoekbeugel)
% (procentteken) # (hekje)

Wat is een token in C?

Een token is de kleinste eenheid in een C-programma. Het is elk woord en leesteken dat je in je C-programma tegenkomt. De compiler breekt een programma op in de kleinst mogelijke eenheden (tokens) en gaat vervolgens verder met de verschillende fasen van de compilatie. Een C-token is onderverdeeld in zes verschillende typen, namelijk trefwoorden, Operators, tekenreeksen, constanten, speciale tekens en identificatiegegevens.

De zes soorten tokens in C

In de volgende paragrafen worden elk van deze tokentypen nader bekeken, te beginnen met de twee die in elke C-instructie voorkomen: trefwoorden en identificatoren.

Trefwoorden in C

In C kan elk woord een sleutelwoord of een identificator zijn.

Trefwoorden hebben een vaste betekenis die niet kan worden gewijzigd. Ze fungeren als de bouwstenen van een C-programma. Er zijn in totaal 32 trefwoorden in C. Trefwoorden worden in kleine letters geschreven.

De volgende tabel geeft de trefwoorden in C weer:

Trefwoorden in C Programming Language
auto verdubbelen int struct
breken anders lang schakelaar
geval opsomming registreren typedef
verkolen extern terugkeer unie
const kort drijven Ongesigneerd
voortzetten besteld, Gesigneerd komen te vervallen
verzuim goto De grootte van vluchtig
do if statisch en

Identificatoren in C

Een identifier is niets anders dan een naam die is toegekend aan een element in een programma, bijvoorbeeld de naam van een element. variabele of een functie. Identificatoren in C taal Identificaties zijn door de gebruiker gedefinieerde namen die bestaan ​​uit de standaard C-tekenset. Zoals de naam al aangeeft, worden identificaties gebruikt om een ​​specifiek element in een programma te identificeren. Elke identificatie moet een unieke naam hebben. De volgende regels moeten worden nageleefd voor identificaties:

  • Het eerste teken moet altijd een alfabet of een onderstrepingsteken zijn.
  • Het mag alleen uit letters, cijfers en onderstrepingstekens bestaan.
  • Een trefwoord kan niet als identificatie worden gebruikt.
  • Het mag geen witruimteteken bevatten.
  • De naam moet betekenisvol zijn.

Constanten in C

Een constante is een token waarvan de waarde niet verandert tijdens de uitvoering van een programma. C-constanten stellen je in staat om vaste gegevens, zoals getallen of tekst, op te slaan en te beschermen tegen onbedoelde wijzigingen. Ze vallen in een aantal veelvoorkomende categorieën:

  • Integer constanten — hele getallen zoals 10, -45 of 0.
  • Drijvende-komma constanten — reële getallen met een decimale punt, zoals 3.14 of -0.5.
  • Karakterconstanten — een enkel teken tussen enkele aanhalingstekens, zoals 'A' of '9'.
  • Tekenreeksconstanten — een reeks tekens tussen dubbele aanhalingstekens, zoals “Guru99 ".

Je kunt een constante definiëren met de const kwalificatie of de #define preprocessor-richtlijn, bijvoorbeeld const int DAYS = 7;Voor een uitgebreidere uitleg over het declareren van vaste waarden, zie de handleiding op C. variabelen, gegevenstypen en constanten.

Snaren in C

Een string in C is een eendimensionale array van tekens die eindigt met een null-teken (\0). Omdat C geen specifiek gegevenstype voor strings heeft, worden stringliteralen opgeslagen als tekenarrays, waarbij het null-teken aangeeft waar de tekst eindigt. Hierdoor kunnen bibliotheekfuncties het einde van de string vinden zonder een aparte lengteteller.

Je kunt een tekenreeks op twee gebruikelijke manieren maken:

  • Als een tekenreeks: char name[] = "Guru99";
  • Als verwijzing naar een letterlijke waarde: char *name = "Guru99";

Beide vormen slaan de zes zichtbare tekens plus het afsluitende null-teken op. Lees de handleiding over tekenreeksen en tekstverwerking voor meer informatie. snaren in C.

Operators in C

Een operator is een token dat de compiler instrueert om een ​​specifieke wiskundige, relationele of logische bewerking uit te voeren op een of meer operanden. OperaTorens zijn de actiesymbolen van een C-programma, en de waarden waarop ze werken worden operanden genoemd. C groepeert ze in verschillende families:

  • Rekenkundige operatoren — voer berekeningen uit, zoals +, -, *, /, en %.
  • Relationele operatoren — vergelijk twee waarden, zoals ==, !=, >, en <.
  • logische operatoren — combineer voorwaarden, zoals &&, || en !.
  • Toewijzingsoperatoren — een waarde opslaan in een variabele, zoals = en +=.
  • Bitwise-operators — werk aan individuele bits, zoals &, |, ^ en ~.

Samen met trefwoorden en identificatoren stellen operatoren een programma in staat om complete instructies uit te drukken die de compiler kan vertalen naar machinecode.

Veelgestelde vragen

Ja. C is een hoofdlettergevoelige taal, dus hoofdletters en kleine letters worden als verschillend behandeld. De 32-keywords moeten in kleine letters worden geschreven en identificatoren zoals Total en total verwijzen naar twee verschillende elementen in hetzelfde programma.

De C-standaard stelt geen harde limiet, maar een conforme compiler hoeft alleen de eerste 63 tekens van een interne identifier en 31 van een externe identifier als significant te beschouwen.ping Korte en beschrijvende namen voorkomen verrassingen bij het meenemen.

Nee. Spaties, tabs, nieuwe regels en commentaren zijn scheidingstekens die de compiler gebruikt om tokens van elkaar te onderscheiden en vervolgens negeert. Ze worden niet meegeteld bij de zes tokensoorten, hoewel een spatie binnen een tekenreeksconstante wel degelijk van belang kan zijn.

Tijdens de eerste fase, lexicale analyse genaamd, scant de compiler de broncode teken voor teken en groepeert deze in de kleinst mogelijke betekenisvolle eenheden. Elk token wordt vervolgens geclassificeerd als een sleutelwoord, identificator, constante, tekenreeks, operator of speciaal symbool.

Een lexeme is de feitelijke reeks tekens in de broncode, zoals de tekst 'int' of 'count'. Een token is de categorie die de compiler aan dat lexeme toewijst, zoals 'keyword' of 'identifier'. Elk token is afkomstig van een overeenkomend lexeme.

Een tekenconstante is een enkel teken tussen enkele aanhalingstekens, zoals 'A', en neemt één byte in beslag. Een tekenreeksconstante is een reeks tekens tussen dubbele aanhalingstekens, zoals Guru99, en eindigt altijd met een verborgen null-teken, waardoor er één extra byte nodig is.

Ja. AI-codeerassistenten suggereren geldige identificatoren, vullen op trefwoorden gebaseerde statements aan en markeren namen die conflicteren met gereserveerde trefwoorden terwijl je typt. Ze kunnen ook een commentaar in gewone taal omzetten in correcte C-declaraties, hoewel je de gegenereerde code nog steeds moet controleren.

GitHub-copiloot Deze functie vult C-identificaties, trefwoorden en volledige statements automatisch aan op basis van uw opmerkingen of variabelnamen. Het suggereert betekenisvolle namen, waarschuwt voor conflicten tussen trefwoorden en genereert standaardtekst, maar elke suggestie moet nog zorgvuldig worden gecontroleerd.

Vat dit bericht samen met: