蓝森林首页 | 返回主页 | 本站地图 | 站内搜索 | 联系信箱 |
 您目前的位置:首页 > 自由软件 > 技术交流 > 应用编程


    

蓝森林 http://www.lslnet.com 2006年6月6日 10:18


求助,linux下c程序的简单问题

我在linux下编译以前同事留下来的C程序,他写好了Makefile,我直接make,但出现很多错误,我发现都是c程序在函数中定义变量产生的,比如:
程序(部分)
void* ReadThread(void* argList)
{
        struct log_device* log;
        int returnAction;
        int bStopThread = 1;//这前面定义的变量不出现错误
        log = (struct log_device*)argList;
        //int bStopThread = 1;
        while(bStopThread){
                log_message(log,"[thread]:","******************thread thread**********************");
                char * ctrlMsg;//但在这儿定义的变量就提示出错,这是怎么回事啊?急死我了
                ctrlMsg = calloc(40,sizeof(char *));
                char subCode[5];
}
}       
错误(部分):
gcc -c  -Wall -g -I./log/include -I./db/include -I./manager/include -I./action/include  manager/src/manager.c  -o manager/obj/manager.o
manager/src/manager.c: In function `ReadThread':
manager/src/manager.c:13: parse error before `char'
manager/src/manager.c:14: `ctrlMsg' undeclared (first use in this function)
manager/src/manager.c:14: (Each undeclared identifier is reported only once
manager/src/manager.c:14: for each function it appears in.)
manager/src/manager.c:15: parse error before `char'
manager/src/manager.c:20: `sendStr' undeclared (first use in this function)
manager/src/manager.c:21: `actionNumStr' undeclared (first use in this function)
manager/src/manager.c:23: `cpContent' undeclared (first use in this function)
manager/src/manager.c:24: parse error before `int'
不知道哪儿不对,linux刚用,谢谢大家啊。

变量定义(声明) 的位置应在开始部分吧,对C来说.C++就不需这样



Copyright © 1999-2000 LSLNET.COM. All rights reserved. 蓝森林网站 版权所有。 E-mail : webmaster@lslnet.com