C-tokens, nøgleord og identifikatorer: Typer og eksempler

⚡ Smart opsummering

Tokens i C er de mindste individuelle enheder, som compileren læser, og hvert C-program er bygget op af seks token-typer: nøgleord, identifikatorer, konstanter, strenge, operatorer og specialsymboler hentet fra C-tegnsættet.

  • 🔤 Karaktersæt: C-kildekode bruger bogstaver, cifre, mellemrum og specialtegn, der kombineres for at danne hvert token og symbol.
  • 🧩 Seks tokentyper: Compileren opdeler et program i nøgleord, identifikatorer, konstanter, strenge, operatorer og specialsymboler.
  • 🔑 nøgleord: C reserverer 32 små nøgleord såsom int, for og return, hvert med en fast betydning, som du ikke kan omdefinere.
  • 🏷️ Identifikatorer: Brugerdefinerede navne til variabler og funktioner skal starte med et bogstav eller en understregning og undgå reserverede nøgleord.
  • 🔢 Konstanter og strenge: Konstanter har faste værdier, mens strengliteraler grupperer tegn i dobbelte anførselstegn, der slutter med et null-tegn.
  • 🤖 AI assistance: GitHub Copilot og lignende assistenter foreslår gyldige identifikatorer, markerer nøgleordskoldninger og fremskynder C-kodning.

C-tokens, identifikatorer og nøgleord

Hvad er et tegnsæt i C?

Ligesom alle andre sprog har C også sit eget tegnsæt. Et program er et sæt instruktioner, der, når de udføres, genererer et output. De data, der behandles af et program, består af forskellige tegn og symboler. Det genererede output er også en kombination af tegn og symboler.

Et tegnsæt i C er opdelt i:

  • Breve
  • Numbers
  • Særlige tegn
  • Hvide mellemrum (blanke mellemrum)

En compiler ignorerer altid brugen af ​​tegn, men den bruges i vid udstrækning til formatering af data. Følgende er tegnsættet i C-programmering:

1) Breve

  • Store bogstaver (AZ)
  • Små bogstaver (az)

2) Numbers

  • Alle cifre fra 0 til 9

3) Hvide mellemrum

  • Tom plads
  • Ny linje
  • Vognretur
  • Vandret fane

4) Specialtegn

Specialtegn i C vises i den givne tabel:

Speciel karakter Beskrivelse
, (komma) { (åbnende krøllet parentes)
. (periode) } (lukkende krøllet parentes)
; (semikolon) [ (venstre parentes)
: (kolon) ] (højre parentes)
? (spørgsmålstegn) ((åbning af venstre parentes)
' (apostrof) ) (lukkende højre parentes)
" (dobbelt anførselstegn) & (ampersand)
! (udråbstegn) ^ (karet)
|(lodret streg) + (tilføjelse)
/ (skråstreg) – (underordnettraction)
\ (skråstreg baglæns) * (multiplikation)
~ (tilde) / (division)
_ (understregning) > (større end eller lukkevinkel beslag)
$ (dollartegn) < (mindre end eller åbningsvinkelbeslag)
% (procenttegn) # (hash-tegn)

Hvad er et token i C?

Et token er den mindste enhed i et C-program. Det er hvert eneste ord og tegnsætning, du støder på i dit C-program. Compileren opdeler et program i de mindst mulige enheder (tokens) og fortsætter til de forskellige trin i kompileringen. AC-token er opdelt i seks forskellige typer, nemlig nøgleord, Operatorer, strenge, konstanter, specialtegn og identifikatorer.

De seks typer af tokens i C

De næste afsnit ser på hver af disse token-typer, startende med de to, der udgør hver C-sætning: nøgleord og identifikatorer.

Nøgleord i C

I C kan hvert ord enten være et nøgleord eller en identifikator.

Nøgleord har faste betydninger, og betydningen kan ikke ændres. De fungerer som byggestenene i et C-program. Der er i alt 32 nøgleord i C. Nøgleord skrives med små bogstaver.

Følgende tabel repræsenterer nøgleordene i C:

Nøgleord i C Programming Language
auto fordoble int struktur
bryde andet lang skifte
tilfælde enum register typedef
char ekstern afkast union
const kort flyde usigneret
fortsæt forum underskrevet ugyldig
standard goto størrelse på flygtige
do if statisk mens

Identifikatorer i C

En identifikator er intet andet end et navn, der er tildelt et element i et program, for eksempel navnet på en variabel eller en funktion. Identifikatorer i C-sprog er de brugerdefinerede navne, der består af C-standardtegnsættet. Som navnet antyder, bruges identifikatorer til at identificere et bestemt element i et program. Hver identifikator skal have et unikt navn. Følgende regler skal følges for identifikatorer:

  • Det første tegn skal altid være et alfabet eller en understregning.
  • Det skal kun dannes ved hjælp af bogstaver, tal eller understregning.
  • Et nøgleord kan ikke bruges som en identifikator.
  • Det bør ikke indeholde mellemrumstegn.
  • Navnet skal være meningsfuldt.

Konstanter i C

En konstant er et token, hvis værdi ikke ændrer sig under programudførelse. C-konstanter giver dig mulighed for at gemme faste data, såsom tal eller tekst, og beskytte dem mod utilsigtet ændring. De falder i et par almindelige kategorier:

  • Heltalskonstanter — hele tal såsom 10, -45 eller 0.
  • Flydende kommakonstanter — reelle tal med et decimalpunkt, såsom 3.14 eller -0.5.
  • Karakterkonstanter — et enkelt tegn i enkelte anførselstegn, f.eks. 'A' eller '9'.
  • Strengkonstanter — en rækkefølge af tegn i dobbelte anførselstegn, såsom “Guru99. "

Du kan definere en konstant med const kvalifikationsspilleren eller #define for eksempel præprocessordirektiv const int DAYS = 7;For et dybere kig på deklarering af faste værdier, se vejledningen til C variable, datatyper og konstanter.

Strygere i C

En streng i C er et endimensionelt array af tegn afsluttet med et null-tegn (\0). Da C ikke har nogen dedikeret strengdatatype, gemmes strengliteraler som tegnarrays, og null-tegnet markerer, hvor teksten slutter. Dette gør det muligt for biblioteksfunktioner at finde slutningen af ​​strengen uden en separat længdetæller.

Du kan oprette en streng på to almindelige måder:

  • Som et tegnarray: char name[] = "Guru99";
  • Som en peger på en bogstav: char *name = "Guru99";

Begge former gemmer de seks synlige tegn plus det afsluttende null-tegn. For at udforske tegnmatrixer og teksthåndtering yderligere, læs vejledningen om strenge i C.

Operatorer i C

En operator er et token, der instruerer compileren til at udføre en specifik matematisk, relationel eller logisk operation på en eller flere operander. OperaTorer er handlingssymbolerne i et C-program, og de værdier, de arbejder på, kaldes operander. C grupperer dem i flere familier:

  • Aritmetiske operatorer — udføre beregninger, såsom +, -, *, / og %.
  • Relationelle operatorer — sammenligne to værdier, såsom ==, !=, > og <.
  • logiske operatorer — kombiner betingelser, såsom &&, || og !.
  • Opgaveoperatører — gemmer en værdi i en variabel, f.eks. = og +=.
  • Bitvise operatører — arbejde på individuelle bits, såsom &, |, ^ og ~.

Sammen med nøgleord og identifikatorer lader operatorer et program udtrykke komplette instruktioner, som compileren kan oversætte til maskinkode.

Ofte Stillede Spørgsmål

Ja. C er et sprog, der skelner mellem store og små bogstaver, så store og små bogstaver behandles som forskellige. De 32 nøgleord skal skrives med små bogstaver, og identifikatorer som Total og total refererer til to separate elementer i det samme program.

C-standarden sætter ingen hård grænse, men en kompatibel compiler behøver kun at behandle de første 63 tegn i en intern identifikator og 31 i en ekstern identifikator som signifikante.ping Korte og beskrivende navne undgår overraskelser ved portabilitet.

Nej. Mellemrum, tabulatorer, linjeskift og kommentarer er separatorer, som compileren bruger til at skelne tokens fra hinanden og derefter kasserer. De tæller ikke med blandt de seks tokentyper, selvom et mellemrum kan være signifikant inde i en strengliteral.

I den første fase, kaldet leksikalsk analyse, scanner compileren kildekoden tegn for tegn og grupperer dem i de mindste meningsfulde enheder. Hvert token klassificeres derefter som et nøgleord, identifikator, konstant, streng, operator eller specialsymbol.

Et leksem er den faktiske rækkefølge af tegn i kildekoden, såsom teksten int eller count. Et token er den kategori, som compileren tildeler det pågældende leksem, såsom nøgleord eller identifikator. Hvert token kommer fra et matchende leksem.

En tegnkonstant er et enkelt tegn i enkelte anførselstegn, f.eks. 'A', og optager én byte. En strengliteral er en sekvens af tegn i dobbelte anførselstegn, f.eks. Guru99, og slutter altid med et skjult nul-tegn, hvilket kræver én ekstra byte.

Ja. AI-kodningsassistenter foreslår gyldige identifikatorer, kompletterer nøgleordsbaserede udsagn og markerer navne, der kolliderer med reserverede nøgleord, mens du skriver. De kan også konvertere en kommentar i et letforståeligt sprog til korrekte C-deklarationer, selvom du stadig bør gennemgå den genererede kode.

GitHub Copilot autofuldfører C-identifikatorer, nøgleord og hele udsagn fra dine kommentarer eller variabelnavne. Den foreslår meningsfulde navne, advarer om nøgleordskonflikter og udarbejder standardtekster, men hvert forslag kræver stadig en omhyggelig gennemgang.

Opsummer dette indlæg med: