如何在C中最好地使用const关键字?

c00*_*ter 8 c const

我试图了解我应该如何const在C代码中使用.首先,我并没有真正使用它,但后来我看到了很多const在整个过程中使用的例子.我应该努力并回去并虔诚地制作合适的变量const吗?或者我只是在等我的时间?

我想它可以更容易地读取预期会发生变化的变量,特别是在函数调用中,对于人类和编译器.我错过了其他重要的观点吗?

cda*_*rke 8

const键入的,#define宏不是.

const由C块限定,#define适用于文件(或更严格地说,编译单元).

const参数传递最有用.如果你看到const在带有指针的原型上使用,你知道传递你的数组或结构是安全的,因为该函数不会改变它.不const,它可以.

看看这样的定义strcpy(),你会明白我的意思.在开始时将"const-ness"应用于函数原型.改装const并不像"大量工作"那么困难(但如果你按小时收到工资就行了).

还要考虑:

const char *s = "Hello World";
char *s = "Hello World";
Run Code Online (Sandbox Code Playgroud)

这是正确的,为什么?


P.P*_*.P. 6

__PRE__

使用const时,你想让它的"只读".就这么简单:)