顾名思义,常量是在C / C++编程语言中为此类变量或值提供的,一旦定义,就无法对其进行修改。它们是程序中的固定值。可以有任何类型的常量,例如整数,浮点数,八进制,十六进制,字符常量等。每个常量都有一定范围。太大而无法容纳为int的整数将被使用。现在有各种范围,从无符号位到有符号位都不同。在有符号位下,int的范围从-128到+127不等;在无符号位下,int范围从0到255。
定义常数:
在C / C++程序中,我们可以通过两种方式定义常量,如下所示:
- 使用#define预处理程序指令
- 使用const关键字
字面量:分配给每个常量变量的值称为字面量。通常,术语,常量和字面量均可互换使用。例如,“ const int = 5; “,是一个常量表达式,值5称为常量整数字面量。
有关C++中各种类型的字面量,请参见此处。
现在让我们详细了解上述两种方法:
- 使用#define预处理程序伪指令:此伪指令用于为现有变量或任何值声明别名。我们可以使用它来声明一个常量,如下所示:
#define identifierName value
- identifierName:这是给常量的名称。
- 值:这是指分配给identifierName的任何值。
例子:
C
#include
#define val 10 #define floatVal 4.5 #define charVal 'G' int main() { printf("Integer Constant: %d\n",val); printf("Floating point Constant: %.1f\n",floatVal); printf("Character Constant: %c\n",charVal); return 0; }
C++
#include
using namespace std; #define val 10 #define floatVal 4.5 #define charVal 'G' int main() { cout << "Integer Constant: " << val << "\n"; cout << "Floating point Constant: " << floatVal << "\n"; cout << "Character Constant: "<< charVal << "\n"; return 0; }
C
#include
int main() { // int constant const int intVal = 10; // Real constant const float floatVal = 4.14; // char constant const char charVal = 'A'; // string constant const char stringVal[10] = "ABC"; printf("Integer constant:%d \n", intVal ); printf("Floating point constant: %.2f\n", floatVal ); printf("Character constant: %c\n", charVal ); printf("String constant: %s\n", stringVal); return 0; }
C++
#include
using namespace std; int main() { // int constant const int intVal = 10; // Real constant const float floatVal = 4.14; // char constant const char charVal = 'A'; // string constant const string stringVal = "ABC"; cout << "Integer Constant: " << intVal << "\n"; cout << "Floating point Constant: " << floatVal << "\n"; cout << "Character Constant: "<< charVal << "\n"; cout << "String Constant: "<< stringVal << "\n"; return 0; }
输出:Integer Constant: 10 Floating point Constant: 4.5 Character Constant: G
有关详细信息,请参见C中的宏和预处理器。
- 使用const关键字:使用const关键字定义常量就像定义变量一样简单,区别在于您必须在定义之前加上const关键字。
下面的程序显示了如何使用const声明不同数据类型的成本:
C
#include
int main() { // int constant const int intVal = 10; // Real constant const float floatVal = 4.14; // char constant const char charVal = 'A'; // string constant const char stringVal[10] = "ABC"; printf("Integer constant:%d \n", intVal ); printf("Floating point constant: %.2f\n", floatVal ); printf("Character constant: %c\n", charVal ); printf("String constant: %s\n", stringVal); return 0; } C++
#include
using namespace std; int main() { // int constant const int intVal = 10; // Real constant const float floatVal = 4.14; // char constant const char charVal = 'A'; // string constant const string stringVal = "ABC"; cout << "Integer Constant: " << intVal << "\n"; cout << "Floating point Constant: " << floatVal << "\n"; cout << "Character Constant: "<< charVal << "\n"; cout << "String Constant: "<< stringVal << "\n"; return 0; } 输出:
Integer constant: 10 Floating point constant: 4.14 Character constant: A String constant: ABC
有关详细信息,请参阅C中的常量限定符。
想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。