我发现rand()
仿生的功能如果不包括在内就不起作用stdlib.h
extern int rand(void);
static void foo()
{
int a = rand();
}
int main()
{
foo()
return 0;
}
结果glibc
:
编译成功
结果bionic
:
编译失败
error: undefined reference to 'rand'
在bionic
源代码中,我们有以下实现:
static __inline__ int rand(void) {
return (int)lrand48();
}
为什么它适用glibc
但不适用于bionic