为什么宏定义变量不能作为函数参数传入?

#include <stdio.h>
#define A 10;
int fun(int a,int b)
{
    return a+b;
}
int main () {
    int a=0;
    a+=A;
    printf("%d\n",fun(3,2));
    printf("%d\n",fun(3,a));
    printf("%d\n",fun(3,A));
    return 0;
}

为什么宏定义变量标识符A可以直接与a进行运算,但是不能带入函数内使用,
使用强转类型也不可以

#define A 10;
->
#define A 10
去掉分号

问题解决的话,请点下采纳

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^