相关疑难解决方法(0)

C宏和括号中的参数使用

#define Echo(a)  a
#define Echo(a) (a)
Run Code Online (Sandbox Code Playgroud)

我意识到这里可能没有显着差异,但为什么你想要a在宏体内包括括号内?它是如何改变它的?

c macros parentheses c-preprocessor

13
推荐指数
1
解决办法
3032
查看次数

为什么我的代码输出错误?

我正在运行以下代码:

#include<stdio.h>
#define x 5+2

int main() {

    int p;
    p = x*x*x;
    printf("%d",p);

}
Run Code Online (Sandbox Code Playgroud)

我期待343作为输出,但答案是27.为什么这样?我无法弄清楚为什么会发生这种情况.请帮忙.

c c-preprocessor

-2
推荐指数
1
解决办法
90
查看次数

标签 统计

c ×2

c-preprocessor ×2

macros ×1

parentheses ×1