如何从C语言顺利过渡到使用C中的const关键字?

2026-05-20 01:430阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1544个文字,预计阅读时间需要7分钟。

如何从C语言顺利过渡到使用C中的const关键字?

1. 定义常量 1.1 C语言中定义常量的方法 在C语言中,定义常量的方法主要有两种:使用`#define`预处理命令和`const`关键字。以下是具体方法:

- 使用`#define`预处理命令:例如,`#define PI 3.14159`。 - 使用`const`关键字:例如,`const float PI=3.14159;`。

没有看过的同学请参考:C语言从零开始(五)- 常量与变量。

1. 定义常量

1.1 C语言中定义常量的方法

在C语言从零开始这个系列中,我们讲了C语言定义常量的方法。没有看过的同学请参考:C语言从零开始(五)-常量&变量

为什么要定义常量我就不再赘述了,这里重点说说这么定义有什么不好。经常有这样的面试题:请写出下面这段代码的执行结果:

#include <stdio.h> #define SUM 5 + 1; void main() { int a = 2 * SUM; printf("%d", a); }

经常有人答12,其实结果是11。不信你用计算机运行一下试试。

为什么会错呢,因为#define定义的常量是伪常量,它在参加编译时做的是原样字符替换。就是2 * SUM这句在编译器看来应该是

int a = 2 * 5 + 1;

如果你的本意是想得到12,那么定义中应该这么写:

#define SUM (5 + 1);

这样的经典错误很多人都犯过,虽然道理大家都知道,但是总会因为粗心大意掉进这个坑里。

于是,C++引入const常量彻底解决了这个问题。

阅读全文

本文共计1544个文字,预计阅读时间需要7分钟。

如何从C语言顺利过渡到使用C中的const关键字?

1. 定义常量 1.1 C语言中定义常量的方法 在C语言中,定义常量的方法主要有两种:使用`#define`预处理命令和`const`关键字。以下是具体方法:

- 使用`#define`预处理命令:例如,`#define PI 3.14159`。 - 使用`const`关键字:例如,`const float PI=3.14159;`。

没有看过的同学请参考:C语言从零开始(五)- 常量与变量。

1. 定义常量

1.1 C语言中定义常量的方法

在C语言从零开始这个系列中,我们讲了C语言定义常量的方法。没有看过的同学请参考:C语言从零开始(五)-常量&变量

为什么要定义常量我就不再赘述了,这里重点说说这么定义有什么不好。经常有这样的面试题:请写出下面这段代码的执行结果:

#include <stdio.h> #define SUM 5 + 1; void main() { int a = 2 * SUM; printf("%d", a); }

经常有人答12,其实结果是11。不信你用计算机运行一下试试。

为什么会错呢,因为#define定义的常量是伪常量,它在参加编译时做的是原样字符替换。就是2 * SUM这句在编译器看来应该是

int a = 2 * 5 + 1;

如果你的本意是想得到12,那么定义中应该这么写:

#define SUM (5 + 1);

这样的经典错误很多人都犯过,虽然道理大家都知道,但是总会因为粗心大意掉进这个坑里。

于是,C++引入const常量彻底解决了这个问题。

阅读全文