加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

C语言速查手册:常量(Constants)

04/29 11:00
876
阅读需 3 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

常量它是一个数据或是程序在运行时其值不能改变的变量,常量也有很多不同的数据类型,下表列出一些常见的数据类型。

常量一般可分为两种:

  • 直接常量:在程序程序中直接引用的数据,可以是整型、实数、字符、字符串等。
  • 符号常量:为了增加程序的可读性和维护性,还可以用常量相关的标识符来表示常量。

在C语言中,有两种方法可以定义一个常量:

使用const关键字定义常量,const定义的实际上也是一个变量,但这个变量的值是不能改变的。

const type variable = value;
#include <stdio.h>
int main()
{
//使用const关键字定义一个常量PI
const float PI = 3.141592;
printf("PI=%.6fn", PI);
}
输出结果:PI=3.141592

如果程序中修改const定义的常量,将会编译错误。

#include <stdio.h>
int main()
{
//使用const关键字定义一个常量PI
const float PI = 3.141592;
PI = 1;
}

输出结果:程序会出现“ must be a modifiable value”的编译错误。

使用#define预处理器定义常量,这里的常量用宏表示,程序在预编译的时候会将宏替换成宏所表示的数据。

#define identifier value
#include <stdio.h>
#define PI 3.141592 //使用#define预处理
int main()
{
printf("PI=%.6fn", PI);
}

输出结果:PI=3.141592

上面的这两种定义方式,其实是有着本质的区别。对于const关键字方式如上所说,它是一个不能改变其值的变量,是由数据类型的,在编译时需要对其类型检查,并会分配内存。而#define方式定义的是宏,是不带类型的常数,在预处理阶段由编译器进行数据替换,也不会对其分配内存和类型检查。

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
HFBR-57E5APZ 1 Broadcom Limited Transceiver, 1270nm Min, 1380nm Max, LC Connector, Surface Mount, ROHS COMPLIANT PACKAGE
$70.48 查看
TLE6250GV33XUMA1 1 Infineon Technologies AG Interface Circuit, BICMOS, PDSO8, GREEN, PLASTIC, SOP-8

ECAD模型

下载ECAD模型
$1.22 查看
NC7ST08P5X 1 Rochester Electronics LLC HST/T SERIES, 2-INPUT AND GATE, PDSO5, 1.25 MM, EIAJ, SC-88A, SC-70, 5 PIN
$0.25 查看

相关推荐

电子产业图谱