在C和C ++中有多种声明常量的方法。首先,我们需要了解什么是常数。
常量表示不能更改。就编程而言,常量是分配给变量的固定值,这样,在程序执行期间就不能被任何其他变量或组件更改它们。常数可以是任何数据类型。它们在编程中用于定义程序的不变组件。有些数据或变量具有固定值,例如Pi的浮点值固定为3.14,因此可以将其声明为常量。
使用const关键字-这是将变量设为常量的最常用方法。如果程序尝试更改声明为const的常量变量的值,则编译器将通过错误消息。
#include<stdio.h> int main(){ const int value = 5; printf("value of constant variable is : %d ",value); //try to change the value of constant variable value = 8; return 0; }
此代码的输出将是-
||=== Build file: "no target" in "no project" (compiler: unknown) ===| C:\Users\dell\OneDrive\Documents\test.c||In function 'main':| C:\Users\dell\OneDrive\Documents\test.c|7|error: assignment of read-only variable 'value'| ||=== Build failed: 1 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
通过创建Enum -Enum或Enumeration也用于创建一组常量值。Enum是一种用户定义的数据类型,可用于许多编程语言,包括C和C ++。例如,我们可以将星期几定义为枚举,因为它们具有固定的字符串类型数据值。
#include<stdio.h> enum months{Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec}; int main(){ int i; printf("values are : "); for (i=Jan; i<=Dec; i++) printf("%d ", i); return 0; }
此代码的输出将是-
values are : 0 1 2 3 4 5 6 7 8 9 10 11
使用宏-宏是预处理器指令的类型。它们包含一段已知名称的代码。它是使用“ #define”创建的。每当编译器确定代码中的宏名称时,它将用代码替换它。因此,可以说宏是一种常数值。
#include<iostream> using namespace std; #define val 10 int main(){ val++; //we can’t modify the value of constant return 0 ; }
此代码的输出将是-
Main.cpp:6:8: error: expression is not assignable
#include<iostream> using namespace std; #define val 10 int main(){ int product = 1; cout<<"Value of Macro val is : "<<val; for(int i=0;i<val;i++){ product=product*val; } cout<<"\nProduct is: "<<product; cout<<"\nValue of Macro val after modifying it is : "<<val; return 0 ; }
此代码的输出将是-
Value of Macro val is : 10 Product is: 1410065408 Value of Macro val after modifying it is : 10