首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > WinCE >

请问:为什么程序可以单步运行,但不能快速运行

2012-02-29 
请教:为什么程序可以单步运行,但不能快速运行各位大侠:我写了一个简单的关于字符串转换为无符号长整形秒数

请教:为什么程序可以单步运行,但不能快速运行
各位大侠:我写了一个简单的关于字符串转换为无符号长整形秒数的程序。因为EVC不支持mktime()和localtime()等函数,   我自己写了一个。目前此程序单步执行可以,但是如果直接run,在模拟器上就会看到The   application   has   performed   an   Illegal   Operation   and   Will   Be   Shut   Down。请问这是为什么呢?怎样才能避免这一类错误呢?
我这段程序源代码如下:
extern   "C "   int   pascal   stimetoltime(char   *sTime,   unsigned   long*   plTime)
{

char   sTemp[6];
        unsigned   long   res;  
        int   year;  
//年
memset(sTemp,0x00,sizeof(sTemp));
memcpy(sTemp,sTime,4);
year=atoi(sTemp)-1970;
        res   =long(YEAR*year   +   DAY*((year+1)/4));

//月
memset(sTemp,0x00,sizeof(sTemp));
memcpy(sTemp,sTime+4,2);
        res   +=   long(month[atoi(sTemp)-1]);
        if   ((atoi(sTemp)-1)> 1   &&   ((year+2)%4))
res   -=   DAY;

//日
memset(sTemp,0x00,sizeof(sTemp));
memcpy(sTemp,sTime+6,2);
        res   +=   long(DAY*(atoi(sTemp)-1));  

//时
memset(sTemp,0x00,sizeof(sTemp));
memcpy(sTemp,sTime+8,2);
        res   +=   long(HOUR*atoi(sTemp));  
//分
memset(sTemp,0x00,sizeof(sTemp));
memcpy(sTemp,sTime+10,2);
        res   +=   long(MINUTE*atoi(sTemp));  
//秒
memset(sTemp,0x00,sizeof(sTemp));
memcpy(sTemp,sTime+12,2);
res   +=   long(atoi(sTemp));
*plTime=res;
    return   0;
}
拜谢大家!

[解决办法]
你的YEAR ,DAY,month是怎么定义
以及你的stimetoltime是怎么调用的;
[解决办法]
楼主的程序 是如何调用的?
传入的函数各是什么?

热点排行