我正在尝试理解Kernighan和Ritchie的书"The C Programming Language,第二版“中展示的存储分配器程序。我想我理解的最多,但是当我用Windows 8.1 x86_64 with TDM GCC version 5.1.0编写程序时。它输出错误undefined reference to 'sbrk'。下面是我的includes:
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>我已经搜索了很多,但没有其他答案对我有帮助。它应该在unistd.h内部,但它不是。是不是因为它是一个系统调用,所以在Windows中找不到?怎么啦?
发布于 2017-07-12 01:18:26
是的,sbrk是一个unix系统调用。它在Windows上不可用。
(附注:函数本身不在头部内;头部通常只包含声明。实际函数位于某些库中(本例中为libc)。)
https://stackoverflow.com/questions/45040807
复制相似问题