![]() |
1
6
通常,编译器会将相同的字符串常量折叠到相同的字符串中,除非您告诉它不要这样做。即使不能用一个常量初始化另一个常量,用相同的值初始化它们也会产生相同的净效果。
将#define隐藏在一个源文件中,而不是在头文件中。只需在一个位置更改值。一个常量有两个名称。当然,在多个文件中定义常量的场景中,您必须让这些源文件可以访问#define。 |
![]() |
2
4
|
![]() |
3
2
在代码中指定字符串常量:
一个缺点是它们没有受到编译器的保护而不被修改。不过,初始化非常灵活,您可能可以改进其他代码。您还可以为您的字符串保证不同的地址,不管编译器是否决定折叠是本周的工作。 |
![]() |
MaPo · Linux,设置锁定ICMP_过滤器选项 4 月前 |
![]() |
Doohyeon Won · 内联函数上的奇怪现象?[关闭] 4 月前 |
![]() |
Bobby · 复合字面值总是左值吗? 5 月前 |
![]() |
9-Pin · C: 嵌套结构的堆栈内存分配 5 月前 |