📅  最后修改于: 2023-12-03 15:13:44.737000             🧑  作者: Mango
在C/C++语言中,常数是指在程序中直接使用的固定值。常数可以是整数、实数、字符或者字符串等。常数在编译时被解析并替换成实际的值,因此可以提高程序的执行效率。在本文中,我们将介绍常见的C/C++常数类型及其使用方法。
整型常数是指没有小数部分的数字,可以是二进制、八进制、十进制或十六进制表示。在C/C++中,整型常数默认为十进制表示方式。以下是一些示例:
// 十进制表示方式
int a = 123;
// 八进制表示方式
int b = 0123; // 等同于十进制的 83
// 十六进制表示方式
int c = 0x123; // 等同于十进制的 291
C/C++还支持在数字前面加上标志位来指定常数类型,比如:
// long类型常数
long d = 123L;
// unsigned long类型常数
unsigned long e = 123UL;
// long long类型常数
long long f = 123LL;
实型常数是指具有小数部分的数字,可以是浮点型或双精度型。在C/C++中,实型常数默认为浮点型表示方式。以下是一些示例:
// 浮点型常数
float a = 1.23;
// 双精度型常数
double b = 1.23e-4; // 等同于 0.000123
// 长双精度型常数
long double c = 1.23L;
字符常数指单个字符常量,使用单引号来表示。字符常数的ASCII码值会被存储在变量中。以下是一些示例:
// 字符常数
char a = 'A'; // ASCII码值为65
// 转义字符
char b = '\n'; // 换行符
// 转义字符
char c = '\t'; // 制表符
字符串常数指由多个字符组成的常量字符串,使用双引号来表示。字符串常数在C/C++中为常量字符数组,在数组的最后一个位置存储了'\0'字符,因此在使用时不需要使用'\0'来表示结束。以下是一些示例:
// 字符串常数
char* str1 = "hello world";
// 字符串常数
char* str2 = "this is a string constant";
布尔常数只有两种取值:true和false,分别表示真和假。在C++中,布尔类型是bool。在C++11之前,用0表示false,用非零值表示true。在C++11及之后版本中,引入了关键字true和false。在C中,布尔类型没有被直接定义,通常使用int类型代替。
// C++示例
bool a = true;
// C++示例
bool b = false;
// C示例
int c = 1;
// C示例
int d = 0;
以上是常见的C/C++常数类型及其使用方法。在实际编程中,需要根据不同情况选择使用不同类型的常数,以提高程序的效率和准确性。