C tokenek, kulcsszavak és azonosítók: típusok és példák

⚡ Okos összefoglaló

A C nyelvben a tokenek a fordító által beolvasott legkisebb egyedi egységek, és minden C program hat tokentípusból épül fel: kulcsszavakból, azonosítóból, konstansból, karakterláncból, operátorból és a C karakterkészletből vett speciális szimbólumokból.

  • 🔤 Karakterkészlet: A C forráskód betűket, számjegyeket, szóközöket és speciális karaktereket használ, amelyek együttesen alkotják az összes tokent és szimbólumot.
  • 🧩 Hat token típus: A fordítóprogram a programot kulcsszavakra, azonosítókra, konstansokra, karakterláncokra, operátorokra és speciális szimbólumokra bontja.
  • 🔑 Kulcsszavak: A C nyelv 32 kisbetűs kulcsszót tart fenn, mint például az int, for és return, mindegyiknek fix jelentése van, amit nem lehet újradefiniálni.
  • 🏷️ Azonosítók: A változók és függvények felhasználó által definiált neveinek betűvel vagy aláhúzásjellel kell kezdődniük, és kerülniük kell a foglalt kulcsszavakat.
  • 🔢 Konstansok és karakterláncok: A konstansok fix értékeket tárolnak, míg a karakterlánc literálok a karaktereket dupla idézőjelek közé csoportosítják, és null karakterrel végződnek.
  • 🤖 AI segítség: A GitHub Copilot és hasonló asszisztensek érvényes azonosítókat javasolnak, jelzik a kulcsszóütközéseket és felgyorsítják a C kódolást.

C tokenek, azonosítók és kulcsszavak

Mi a karakterkészlet C-ben?

Mint minden más nyelvnek, a C-nek is megvan a saját karakterkészlete. A program utasítások halmaza, amelyek végrehajtáskor kimenetet generálnak. A program által feldolgozott adatok különféle karakterekből és szimbólumokból állnak. A generált kimenet szintén karakterek és szimbólumok kombinációja.

A C nyelvben egy karakterkészlet a következő részekre oszlik:

  • Betűk
  • Numbers
  • Speciális karakterek
  • Fehér szóközök (üres helyek)

A fordítóprogram mindig figyelmen kívül hagyja a karakterek használatát, de széles körben használják az adatok formázására. A C programozásban a következő karakterkészlet található:

1) Betűk

  • Nagybetűk (AZ)
  • Kisbetűk (az)

2) Numbers

  • Az összes számjegy 0-tól 9-ig

3) Fehér terek

  • üres hely
  • Új sor
  • Szállítás vissza
  • Vízszintes fül

4) Speciális karakterek

A C nyelv speciális karaktereit a táblázat mutatja:

Különleges karakter Leírás
, (vessző) { (göndör zárójelet nyitó)
. (időszak) } (záró göndör zárójel)
; (pontosvessző) [ (bal zárójel)
: (kettőspont) ] (jobb zárójel)
? (kérdőjel) ((bal oldali zárójelet nyit)
' (aposztróf) ) (jobbra záró zárójel)
” (idézőjel) & (és)
! (felkiáltójel) ^ (karet)
|(függőleges sáv) + (kiegészítés)
/ (perjel) – (alfelirat)tracció)
\ (hátra perjel) * (szorzás)
~ (tilde) / (osztály)
_ (aláhúzás) > (nagyobb mint vagy záró szögletes zárójel)
$ (dollár jel) < (kisebb, mint vagy nyitószög zárójel)
% (százalékjel) # (hash jel)

Mi az a token C-ben?

A token a C program legkisebb egysége. Ez minden egyes szó és írásjel, amivel a C programban találkozunk. A fordító a programot a lehető legkisebb egységekre (tokenekre) bontja, és folytatja a fordítás különböző szakaszait. Az AC token hat különböző típusra oszlik, nevezetesen kulcsszavakra, Operatorok, karakterláncok, állandók, speciális karakterek és azonosítók.

A hatféle token C nyelven

A következő szakaszok mindegyik token típust megvizsgálják, kezdve a C utasításokat alkotó két típussal: a kulcsszavakkal és az azonosítókkal.

Kulcsszavak C-ben

C-ben minden szó lehet kulcsszó vagy azonosító.

A kulcsszavaknak fix jelentésük van, és a jelentés nem módosítható. Ezek a C program építőkövei. A C nyelvben összesen 32 kulcsszó található. A kulcsszavakat kisbetűvel írjuk.

A következő táblázat a C nyelven használt kulcsszavakat mutatja be:

Kulcsszavak itt C Programming Language
auto kétszeresére int strukturált
szünet más hosszú kapcsoló
eset enum Regisztráció typedef
faszén külső visszatérés unió
const rövid úszik aláírás nélküli
folytatódik mert aláírt semmisnek
alapértelmezett goto mérete illó
do if statikus míg

Azonosítók C nyelven

Az azonosító nem más, mint egy programelemhez rendelt név, például egy elem neve. változó vagy egy függvény. Azonosítók a C nyelv a felhasználó által definiált nevek, amelyek a C szabványos karakterkészletéből állnak. Ahogy a neve is sugallja, az azonosítók egy adott elem azonosítására szolgálnak egy programban. Minden azonosítónak egyedi névvel kell rendelkeznie. Az azonosítókra a következő szabályokat kell betartani:

  • Az első karakternek mindig ábécé vagy aláhúzás kell lennie.
  • Csak betűk, számok vagy aláhúzás segítségével kell kialakítani.
  • A kulcsszó nem használható azonosítóként.
  • Nem tartalmazhat szóköz karaktert.
  • A névnek értelmesnek kell lennie.

Konstansok C-ben

A konstans egy olyan token, amelynek értéke nem változik a program végrehajtása során. A C konstansok lehetővé teszik rögzített adatok, például számok vagy szöveg tárolását, és azok véletlen módosítás elleni védelmét. Néhány gyakori kategóriába sorolhatók:

  • Egész állandók — egész számok, például 10, -45 vagy 0.
  • Lebegőpontos konstansok — tizedesvesszővel ellátott valós számok, például 3.14 vagy -0.5.
  • Karakterállandók — egyetlen karakter aposztrófok között, például „A” vagy „9”.
  • String állandók — idézőjelek között lévő karaktersorozat, például „Guru99. "

Konstanst definiálhatsz a következővel: const selejtező vagy a #define előfeldolgozó direktíva, például const int DAYS = 7;A fix értékek deklarálásával kapcsolatos részletesebb információkért lásd a C útmutatót. változók, adattípusok és konstansok.

Húrok C-ben

A C nyelvben a karakterlánc egy egydimenziós karaktertömb, amelyet egy null karakter (\0) zár le. Mivel a C nyelvnek nincs dedikált karakterlánc adattípusa, a karakterlánc literálok karaktertömbökként tárolódnak, és a null karakter jelzi a szöveg végét. Ez lehetővé teszi a könyvtári függvények számára, hogy külön hosszszámláló nélkül megtalálják a karakterlánc végét.

Két gyakori módon hozhatsz létre karakterláncot:

  • Karakter tömbként: char name[] = "Guru99";
  • Mutatóként egy literálra: char *name = "Guru99";

Mindkét űrlap tárolja a hat látható karaktert, valamint a lezáró null karaktert. A karaktertömbök és a szövegkezelés további megismeréséhez olvassa el a következő oktatóanyagot: C-nyelvű karakterláncok.

OperaC-ben szereplő torok

Az operátor egy olyan token, amely utasítja a fordítót egy adott matematikai, relációs vagy logikai művelet végrehajtására egy vagy több operanduson. OperaAz operandok a C programok műveleti szimbólumai, az értékeket, amelyeken dolgoznak, operandusoknak nevezzük. A C nyelven ezek több családba csoportosulnak:

  • Számtani operátorok — számítások végrehajtása, például +, -, *, / és %.
  • Relációs operátorok — két érték összehasonlítása, például ==, !=, > és <.
  • logikai operátorok — feltételek kombinálása, például &&, || és !.
  • Hozzárendelési operátorok — értéket tárol egy változóban, például = és +=.
  • Bitenkénti operátorok — az egyes biteken dolgozhat, például az &, |, ^ és ~ jeleken.

A kulcsszavakkal és azonosítókkal együtt az operátorok lehetővé teszik a program számára, hogy teljes utasításokat fejezzen ki, amelyeket a fordító gépi kódra tud fordítani.

GYIK

Igen. A C nyelv kis- és nagybetűérzékeny, így a nagy- és kisbetűket eltérően kezeli. A 32 kulcsszót kisbetűvel kell írni, az olyan azonosítók, mint a Total és a total, pedig két különálló elemre utalnak ugyanazon programon belül.

A C szabvány nem határoz meg szigorú korlátot, de egy konform fordítóprogramnak a belső azonosítóknak csak az első 63 karakterét, a külső azonosítóknak pedig az első 31-et kell szignifikánsnak tekintenie.ping A rövid és leíró nevek elkerülik a hordozhatósági meglepetéseket.

Nem. A szóközök, tabulátorok, sortörések és megjegyzések elválasztók, amelyeket a fordító a tokenek megkülönböztetésére használ, majd elveti. Ezek nem számítanak bele a hat token típusba, bár egy üres szóköz jelentős lehet egy karakterlánc literálon belül.

Az első fázisban, amelyet lexikai elemzésnek nevezünk, a fordítóprogram karakterenként átvizsgálja a forráskódot, és a legkisebb értelmes egységekbe csoportosítja azokat. Minden egyes tokent ezután kulcsszóként, azonosítóként, konstansként, karakterláncként, operátorként vagy speciális szimbólumként osztályoz.

A lexéma a forráskódban található karakterek tényleges sorozata, például az „int” vagy a „count” szöveg. A token az a kategória, amelyet a fordító rendel hozzá ehhez a lexémához, például kulcsszó vagy azonosító. Minden token egy megfelelő lexémából származik.

A karakterkonstans egyetlen karakter aposztrófok között, például 'A', és egy bájtot foglal el. A karakterlánc literál dupla aposztrófok között lévő karakterek sorozata, például Guru99, és mindig egy rejtett null karakterrel végződik, egy plusz bájtot igényel.

Igen. A mesterséges intelligencia által fejlesztett kódolási asszisztensek érvényes azonosítókat, teljes kulcsszóalapú utasításokat javasolnak, és gépelés közben jelzik azokat a neveket, amelyek ütköznek a foglalt kulcsszavakkal. Emellett képesek a sima nyelvű megjegyzéseket helyes C deklarációkká alakítani, bár a generált kódot továbbra is ellenőrizni kell.

GitHub másodpilóta Automatikusan kiegészíti a C azonosítókat, kulcsszavakat és teljes utasításokat a megjegyzéseidből vagy változóneveidből. Jelentős neveket javasol, figyelmeztet a kulcsszóütközésekre, és sablonszöveget készít, de minden javaslatot gondos felülvizsgálatnak kell alávetni.

Foglald össze ezt a bejegyzést a következőképpen: