C 和 C++ 中声明常量变量的不同方法
在 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)) ===|
通过创建枚举 − 枚举也用于创建一组常数值。枚举是许多编程语言(包括 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
广告