有没有BCB高手?快来看看这个。。。(200分)

  • 主题发起人 主题发起人 happylcq
  • 开始时间 开始时间
H

happylcq

Unregistered / Unconfirmed
GUEST, unregistred user!
include <stdlib.h>
extern char** environ;
main()
{
char **env = environ;
while(*env)
{
printf(*env);
env++;
}
exit(0);
}
这段代码用gcc编译,运行没有问题,可是在kylix3下运行就发生错误。environ没有
分配内存,是不是bcb中extern这种用有问题呀?
 
连接(link )时要加入适当的 lib 文件。
 
去掉extern或加上定义试试.
因为extern char** environ;只是个声明.很多编译器只有声明没有定义通不过连接.
可能GCC可以.不知道.没用过. CBC是不行的.
 
看看BCB连接的是哪些 lib
 
看看environ是在哪里定义的,是否在引用前已经被正确分配了内存空间
 
后退
顶部