io_utils.h宏定义和方法声明未实现问题
来源:6-1 数组基础【C语言设计哲学】

qq_申_0
2025-02-17
老师好, 以下问题请教:
问题1:
for (int i = 0; i < 10; ++i) {
array[i] = i;
PRINT_INT(array[i]);
}
这里通过宏定义打印, 最后每个被替换成了array[i], 若要实现i是动态变动的,要怎么做?
问题2:
// io_utils.h 第16行
void PrintBinary(unsigned int value);
这个似乎没有找到具体的实现,仅声明了, 但我看后面还是有调用, 不明白这里是如何工作的.
谢谢.
写回答
1回答
-
bennyhuo
2025-02-17
问题 1: PRINT_INT(array[i]); 这里的 array[i] 可以是任意整数, PRINT_INT 只不过是在预处理的时候做了个源码的文本替换。同学提到的 i 是动态变动的,这个可以展开说说是怎么动态变动的吗?
问题 2:在 io_utils.c 里面。h 文件里面只是提供了函数原型。
032025-02-18
相似问题