📅  最后修改于: 2023-12-03 14:40:00.472000             🧑  作者: Mango
在C语言中,常量和字面量指的是不可改变的数据值。它们可以直接在代码中使用,而不需要先定义一个变量。
C语言中的常量通常指的是“符号常量”,这些常量在程序执行时不会改变值。C语言中的符号常量可以使用#define预处理指令定义,例如:
#include <stdio.h>
#define PI 3.14159
int main() {
double radius, area;
printf("请输入一个圆的半径:");
scanf("%lf", &radius);
area = PI * radius * radius;
printf("圆的面积是:%lf\n", area);
return 0;
}
在上面的例子中,PI是一个常量,它的值被定义为3.14159。在声明半径变量之后,该常量被用来计算圆的面积。在程序执行时,常量PI的值不会改变。
除了使用#define来定义常量,C语言还提供了另一种定义常量的方法——const关键字。例如:
#include <stdio.h>
int main() {
const double PI = 3.14159;
double radius, area;
printf("请输入一个圆的半径:");
scanf("%lf", &radius);
area = PI * radius * radius;
printf("圆的面积是:%lf\n", area);
return 0;
}
在上面的例子中,PI是一个用const关键字定义的常量,它的值也被定义为3.14159。在声明半径变量之后,该常量被用来计算圆的面积。在程序执行时,常量PI的值也不会改变。
C语言中的字面量指的是一种特殊的常量,它们在代码中用特定的格式来表示不同的数据类型。例如:
#include <stdio.h>
int main() {
int octal = 017;
int hex = 0x1F;
double pi = 3.14;
char ch = 'A';
char *str = "hello";
printf("octal=%d, hex=%d, pi=%lf, ch=%c, str=%s\n", octal, hex, pi, ch, str);
return 0;
}
在上面的例子中,我们使用了不同类型的字面量来定义变量。octal和hex是整型变量,它们分别被赋值为八进制数017和十六进制数0x1F。pi是浮点型变量,它被赋值为3.14。ch是字符型变量,它被赋值为大写字母'A'。str是指向字符串的指针,它被赋值为字符串"hello"的地址。最后,我们使用printf函数将这些变量的值打印出来。
总之,常量和字面量是C语言中非常重要的概念。它们可以用来表示不同类型的数据,同时也能为程序提供可读性、可维护性和可重用性。