Har du någonsin tänkt på vad konstanter är och varför de är en viktig del av programmeringsvärlden? Vi har fått alla svar på dina frågor. Konstanter i C och C++ programmering är inget annat än fasta värden som inte kan ändras under hela programkörningen. Dessa fasta värden kallas också för literaler.
På lekmannaspråk kan vi använda termerna konstanter och literaler omväxlande. Men vi kommer att belysa den viktigaste skillnaden mellan de två i den här handledningen.
Innan vi börjar måste du vara medveten om variabler i C
Nu ska vi erkänna betydelsen av konstanter och literaler i C och C++ genom att betrakta följande problem:
Det finns vissa situationer där variablerna inte ändrar sitt värde, låt oss säga att värdet på pi, ungefär lika med 3,14159, är konstant och det kan aldrig ändras vilket är ett universellt faktum. Vi kan stöta på flera situationer där vi behöver pi för matematiska beräkningar. På samma sätt kan vi tilldela konstanta värden till flera variabler enligt vår bekvämlighet.
Håll dig uppdaterad med de senaste tekniktrenderna
Gäng med i DataFlair på Telegram!!!
- Variabler och konstanter i C och C++
- Deklarera eller definiera konstanter
- 2.1 Deklarera eller definiera konstanter i C
- 2.1 Deklarera eller definiera konstanter i C++
- Konstanter vs. bokstäver i C/C++
- Typer av konstanter i C och C++
- 4.1 Helhetskonstanter
- 4.2 Flytande eller reella konstanter
- 4.3 Teckenkonstanter
- 4.4 Strängkonstanter
- 4.5 Uppräkningskonstanter
- Hur använder man konstant i C?
- Hur använder man en konstant i C++?
- Sammanfattning
Variabler och konstanter i C och C++
Det är viktigt att notera att en variabel konnoterar en annan innebörd inom programmering och matematik. En variabel är inget annat än ett värde som vi kan lagra i datorminnet. Vi kan enkelt ändra dess värde under körning. I motsats till detta ändrar konstanter aldrig sitt värde under hela programkörningen. Konstanter kan innehålla alla de datatyper som finns tillgängliga i C och C++.
Deklarera eller definiera konstanter
Vi kan tilldela en variabel ett konstant C/C++-värde på två sätt:
- Med hjälp av #define, ett preprocessordirektiv: Vi har redan diskuterat #define i detalj i preprocessorerna.
Genom att använda nyckelordet const: Det liknar variabeldeklaration förutom att vi ska lägga till nyckelordet ”const” före den. Det är viktigt att tilldela ett värde till konstanten så snart vi deklarerar den.
Lär dig mer om preprocessorer i C, bli medveten om att det är värt det eller inte?
2.1 Deklarera eller definiera konstanter i C
Här är ett program i C som illustrerar vad som händer när vi försöker ändra värdet på en konstant:
#include<stdio.h>int main(){printf("Welcome to DataFlair tutorials!\n\n");const float pi = 3.14;const float e = 2.71;pi = 3.14159;printf("The value of pi is: %f", pi);return 0;}
Output-
2.1 Deklarera eller definiera konstanter i C++
Samma problem uppstår när vi försöker ändra värdet på en konstant:
#include <iostream>using namespace std;int main(){cout<<"Welcome to DataFlair tutorials!"<<endl<<endl;const float pi = 3.14;const float e = 2.71;pi = 3.14159;cout<<"The value of pi is: "<< pi <<endl;return 0;}
Fel-
Konstanter vs. bokstäver i C/C++
Som vi diskuterat tidigare kan konstanter och bokstäver användas synonymt, men det finns en liten skillnad mellan de två.
Låt oss betrakta ett enkelt exempel för att bättre förstå det.
I Indien är den lagliga rösträttsåldern 18 år.
Därför definierar vi,
const voting_age = 18;
Här är 18 en bokstav, ett värde som uttrycks som sig självt medan en konstant kan betraktas som en datatyp som byts ut i stället för en bokstav för att öka funktionaliteten i koden.
Nu vill vi skriva ut meddelandet: ” Du får rösta! ” för personer som är äldre än eller lika med 18 år.
Här är ett kodsegment i C i enlighet med ovanstående uttalande.
if (age >= voting_age)
{
printf(” You are allowed to vote! ”);
}
Här är identifieraren voting_age konstant.
Här är ett kodsegment i C++ i enlighet med påståendet ovan.
if (age >= voting_age)
{
cout<<” You are allowed to vote! ”<<endl;
}
Här är identifieraren voting_age konstant.
Typer av konstanter i C och C++
I C/C++ finns det 5 olika typer av konstanter beroende på deras datatyp:
4.1 Helhetskonstanter
Till exempel,
const signed int limit = 20;
Vi kan använda olika kombinationer av U- och L-suffixen för att beteckna moduler utan förtecken respektive långa moduler, med tanke på att dess upprepning inte förekommer.
Vi kan vidare klassificera den i tre typer, nämligen:
- Konstant i decimaltalsystemet: Den har basen/radix 10. ( 0 till 9)
Till exempel 55, -20, 1.
I det decimala talsystemet används inget prefix. - Konstant i oktaltalsystemet: Den har basen/radixen 8. ( 0 till 7 )
Till exempel 034, 087, 011.
I oktaltalsystemet används 0 som prefix. - Hexadecimaltalsystemkonstant: Den har bas/radix 16. (0 till 9, A till F)
I det hexadecimala talsystemet används 0x som prefix. C-språket ger dig möjlighet att använda antingen versaler eller gemener för att representera hexadecimala tal.
4.2 Flytande eller reella konstanter
Vi använder en flytpunktskonstant för att representera alla reella tal på tallinjen, vilket inkluderar alla bråkvärden.
Till exempel,
const long float pi = 3,14159;
Vi kan representera det på 2 sätt:
- Decimalform:
Till exempel: 2,0, 5,98, -7,23. - Exponentialform:
Till exempel representeras den universella gravitationskonstanten G = 6,67 x 10-11 som 6,67e-11 eller 6,67E-11.
4.3 Teckenkonstanter
Teckenkonstanter används för att tilldela ett fast värde till tecken, inklusive alfabet och siffror eller specialsymboler som är inneslutna inom enkla citationstecken ( ’ ’ ).
Varje tecken är förknippat med ett specifikt numeriskt värde som kallas ASCII-värde (American Standard Code For Information Interchange).
Förutom dessa värden finns det en uppsättning i C som kallas Escape Sequences
Till exempel: ”+”, ”A”, ”d”.
4.4 Strängkonstanter
En strängkonstant är en rad tecken som har ett fast värde omslutet av dubbla citattecken ( ” ” ).
Till exempel: ”DataFlair”, ”Hello world!”
4.5 Uppräkningskonstanter
Uppräkningskonstanter är användardefinierade datatyper i C med ett fast värde som används för att tilldela namn till integrala konstanter.
Till exempel,
enum rainbow = { Violett, Indigo, Blå, Grön, Gul, Orange, Röd }
Uppräkningskonstanten rainbow har följande integrala värden:
Violett : 0
Indigo: 1
Blå: 2
Grön: 3
Gul: 4
Orange: 4
: 5
Röd: 6
Hur använder man konstant i C?
Här är en kod i C som illustrerar användningen av vissa konstanter:
#include<stdio.h>int main(){printf("Welcome to DataFlair tutorials!\n\n");const int value = 4;const float marks = 98.98;const char grade = 'A';const char name = "DataFlair";printf("The constant int value is: %d\n",value);printf("The constant floating-point marks is: %f\n", marks);printf("The constant character grade is: %c\n", grade);printf("The constant string name is: %s\n",name);return 0;}
Kod på skärmen-
Utmatning-
Hur använder man en konstant i C++?
Här är en kod i C++ som illustrerar användningen av vissa konstanter:
#include <iostream>using namespace std;int main(){cout<<"Welcome to DataFlair tutorials!"<<endl<<endl;const int value = 4;const float marks = 98.98;const char grade = 'A';const char name = "DataFlair";cout<<"The constant int value is: "<< value <<endl;cout<<"The constant floating-point marks is: "<< marks <<endl;cout<<"The constant character grade is: "<< grade <<endl;cout<<"The constant string name is: "<< name <<endl;return 0;}
Kod-
Utmatning-
Sammanfattning
I den här handledningen diskuterade vi skillnaden mellan variabler och konstanter i C och C++. Sedan fortsatte vi vår diskussion genom att belysa hur man deklarerar eller definierar konstanter eller literaler och vilka typer av konstanter som finns tillgängliga i C i detalj. Efter att ha slutfört denna handledning har du fått kontroll över konstanter och literaler i C/C++.
Glöm inte att kolla Unions i C-språket
.