C `define` 中两个数字之间有破折号是什么意思?
What does it mean when there is a dash between two numbers in C `define`?
#define BUFF_SIZE 96-48
我在 x64 中打印了 BUFF_SIZE
,它打印了 48,但我不确定 96-48
的实际含义。
C 和 C++ 中的每个宏都是字面值,由编译器放置到位。所以96-48字面意思是96减48,等于48.
当您拥有代码段时:
1 #include <stdio.h>
2
3 #define BUFF_SIZE 96-48
4
5 int main(void) {
6 printf("%d\n", BUFF_SIZE);
7 return 0;
8 }
编译器直接将 printf("%d\n", 96-48);
放入您的代码中。
#define BUFF_SIZE 96-48
我在 x64 中打印了 BUFF_SIZE
,它打印了 48,但我不确定 96-48
的实际含义。
C 和 C++ 中的每个宏都是字面值,由编译器放置到位。所以96-48字面意思是96减48,等于48.
当您拥有代码段时:
1 #include <stdio.h>
2
3 #define BUFF_SIZE 96-48
4
5 int main(void) {
6 printf("%d\n", BUFF_SIZE);
7 return 0;
8 }
编译器直接将 printf("%d\n", 96-48);
放入您的代码中。