Indholdsfortegnelse:
Video: RPC-313 The Wellspring | Omega-Purple | Extradimensional / Infohazard RPC 2025
Konstanter kan være meget nyttige i C-programmeringen, når du har nogen værdi, der gentages i dit program. Afklare en konstant giver dig mulighed for hurtigt og nemt at ændre en værdi, der bruges i hele din kode, blot ved at ændre erklæringen.
Deklarationskonstanter
I modsætning til variabler er konstanter deklareret ved hjælp af C-sprogprocessoren og ikke kompilatoren. Her er formatet:
#define VOTING_AGE 18
Direktivet #define er en preprocessor-kommando. Det efterfølges af navnet på det symbol, der defineres, VOTING_AGE. Disse symboler er navngivet som variabler, men ved at bruge ALLE CAPS for konstanter kan du nemt identificere konstanter versus variabler i din kildekode. Symbolet skal være alt ét ord. Efter symbolet er et mellemrum og derefter den værdi, som symbolet repræsenterer. Der er ikke noget tegn!
Indsæt ikke et semikolon, medmindre du vil have semikolonet at være en del af konstanten (og det gør du sikkert ikke).
Forprocessoren tager symbolet og foretager en søgning og erstatning i hele din kode, idet symbolet erstattes med det, det repræsenterer. I sidste ende bliver den "konstante" en umiddelbar værdi. Og ved at bruge #define til at skabe konstanten, giver du dig selv fleksibiliteten til nemt at ændre den senere.
Brug af konstanter i din kode
Konstante definitioner følger typisk #include-direktiverne øverst i C-kildekode:
#include #define SPEEDLIMIT 55 #define RATE 15 #define FIRST_TICKET 85 #define SECOND_TICKET 95 #define THIRD_TICKET 100 int main () {int total, fine, hastighed; sætter ("Speeding Ticketsn"); / * første billet * / speeding = FIRST_TICKET - SPEEDLIMIT; fint = hastighed * sats; total = total + fin; printf ("For at gå% d i en% d zone: $% dn", FIRST_TICKET, SPEEDLIMIT, fint); / * anden billet * / speeding = SECOND_TICKET - SPEEDLIMIT; fint = hastighed * sats; total = total + fin; printf ("For at gå% d i en% d zone: $% dn", SECOND_TICKET, SPEEDLIMIT, fint); / * tredje billet * / speeding = THIRD_TICKET - SPEEDLIMIT; fint = hastighed * sats; total = total + fin; printf ("For at gå% d i en% d zone: $% dn", THIRD_TICKET, SPEEDLIMIT, fint); / * Vis alt * / printf ("nTotal i bøder: $% dn", i alt); returnere (0);}
Indtast dette i din editor, gem det, kompilere det og kør det.
Antag at du har gennemført programmet, men så ændrer lokalsamfundet hastighedsgrænsen fra 55 mph til 60 mph. Også bøden har hoppet fra $ 15 til $ 26 for hver mile per time, du går over grænsen.Fordi du brugte konstanter, kan du foretage disse ændringer på ét sted og få dem til at falle ned til hele koden.
I dette tilfælde vil du ændre dine konstante erklæringer til dette:
#define SPEEDLIMIT 60 #define RATE 26
Andre ting du kan #define
Direktivet om #define er ikke begrænset til blot at skabe konstanter for dig. Du kan definere noget med #define-direktivet, og erstatte i det væsentlige store dele af dit program med hvad du vil. Et godt eksempel på, hvornår du måske vil gøre dette, kan være sådan noget:
#define ASK_PROMPT printf ("Vil du fortsætte (Y / N)?");
På denne måde kan programmøren bare skrive ASK_PROMPT i koden, som erstattes globalt med printf () sætningen, når koden er kompileret. (Som en bonus kan programmøren universelt rette hver prompt ved blot at ændre den enkelte #define.)