小编Ang*_*ela的帖子

我不明白为什么这个程序打印这些结果

这个程序打印出-8 -4但我想知道为什么以及为什么不是编译器显示有关使用哪个函数的错误?为什么结果不同.我对定义这样的函数知之甚少,也可以解释一下

#include <stdio.h>
#include <stdlib.h>

int foo(int x, int y);

#define foo(x, y) x/y + x

int main() {
    int i = -6, j = 3;
    printf("%d ", foo(i + j, 3));
#undef foo
    printf("%d\n", foo(i + j, 3));
}

int foo(int x, int y) {
    return x/y + x;
}
Run Code Online (Sandbox Code Playgroud)

c

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

标签 统计

c ×1