首页 > 解决方案 > 如何避免段错误?

问题描述

我正在使用一个完全没有库的 GNU GCC 编译器,使用 macOS
这是我的代码:

#define in(port, to) __asm__ volatile ("inb %1, %0" : "=a" (to) : "Nd" (port))

char key() {
 char c;
 in(0x60, c);
 return c;
}


调用此函数会导致段错误,怀疑预处理器中的 in() 函数如何避免这种情况?

标签: coperating-systemgnu

解决方案


推荐阅读