📜  C C++中的常数(1)

📅  最后修改于: 2023-12-03 15:13:44.737000             🧑  作者: Mango

C/C++中的常数

在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++常数类型及其使用方法。在实际编程中,需要根据不同情况选择使用不同类型的常数,以提高程序的效率和准确性。