c++-对日外包项目维护中没能理解 ( NPTBL* )( pNpCtl + 1 ); 结果出现的bug

问题描述

对日外包项目维护中没能理解 ( NPTBL* )( pNpCtl + 1 ); 结果出现的bug

小弟做的是对日外包项目维护工作,给了我一堆让人看不懂的代码。
日本狗的代码如下:
pNpCtl 和 pNpCur 是NPCTL结构体类型指针
这是给pNpCtl 赋值的时候
pNpCtl = (NPCTL*)LocalMalloc(lLen, (SWORD)NULL);
if (pNpCtl)
{
Gmemclr((TEXT*)pNpCtl, (SWORD)NULL, lLen);
pNpCtl->nNpLen = (SHALF)lLen;
/* Monitor ID /
Gmove(pNpCtl->sProcessor, sProcessor, sizeof(pNpCtl->sProcessor));
pNpCtl->byClass = abyClassNm [0]; /
Class /
pNpCtl->byAllCnt = abyClassCt [0]; /
Class の多重度 /
if (pSimCvt->pNpCtl)
{
pNpCur->pNpNext = pNpCtl;
}
else
{
pSimCvt->pNpCtl = pNpCtl;
}
pNpCur = pNpCtl;
pSimCvt->lNpCtll += pNpCtl->nNpLen;
}
else{
sprintf(sMsg, ASVSSIM_20, MYNAME, "NPCTBL", lLen);
ApPutConsoleMsg(hAplk, (UBYTE
)sMsg, NULL);
bRcode = FALSE;
}

传到另一个函数时代码如下

pNpTbl = ( NPTBL* )( pNpCtl + 1 );
for ( byUseCnt = 0; byUseCnt < pNpCtl->byUseCnt; pNpTbl++ )
{
if ( pNpTbl->byFlag == NPFLG_RUNNING )
{
pNtTbl = pNpTbl->pNtTbl;
if ( 0 < Gbufcmp( ( UBYTE* )&pSimCvt->NextTm,
( UBYTE* )&pNtTbl->EndTm,
sizeof( SIMDATE ) ) )
Gmove( &pSimCvt->NextTm, &pNtTbl->EndTm,
sizeof( SIMDATE ) );
byUseCnt++;
}
} /* For Loop /
pNpCtl = pNpCtl->pNpNext;
}

结果结构体pNpTbl里有部分数据出现错误的指针,导致程序崩溃。
是否能告知小弟 ( NPTBL
)( pNpCtl + 1 );得出的是什么结果

解决方案

pNpCtl + 1 指向pNpCtl的下一个 NPCTL 结构体, pNpTbl = ( NPTBL* )( pNpCtl + 1 );这句看来,NPCTL第一个结构体成员类型是NPTBL*,其它看不出什么来了

时间: 2024-08-02 01:03:52

c++-对日外包项目维护中没能理解 ( NPTBL* )( pNpCtl + 1 ); 结果出现的bug的相关文章

剖析软件外包项目

       最近看了一本书,叫做<程序员接单宝典>,虽然只有短短的70多页,但是写得的确不错,里面的很多经验都值得我们学习和探讨,于是我借鉴这位大神的经验,来浅要的谈谈接外包项目的事情.同时也有很多精彩的摘要.我在这里就将这本书浓缩为我这篇博文了. 一.接项目前的准备工作             书中讲到了需要创建一个团队,当然对于很多学生或者初级开发者来说,似乎很难创建一个好的team来工作,或许我的想法是可以把自己之前做的一个项目或者demo,同时整理几个框架出来,便于之后更为敏捷的开发

由对日外包想到的

问题描述 一个朋友来咨询,说他一个侄子马上面临毕业,一所职高计算机应用专业,工作不好找,正好有家培训机构到学校做宣传,对日外包定向培训,不就业不交费,孩子有些心动,又拿不准,跑去找他做参谋.中国的外包,大概就三种:欧美外包.本土外包.对日外包.对日外包独成一派,特点也很鲜明,就是系统层面的分析设计一类的有技术含量的工作都是在日本本土完成,发包到中国的工作就是按照设计翻译成代码,日本人的设计很细致,细致到什么程度作者自己没有做过对日外包,也就说不上个子丑寅卯,但对日外包行业对编码人员的要求很低是得

对日外包能学到什么?

问题描述 在一家公司做对日外包,用的是小日本自己的框架,,给你式样书,你按照式样书去写代码,去写设计书,然后放在工具中自动生成代码,然后在安装给你的式样书在相应的文件中添加代码,,,,每天就是做这个,不知道自己做的是什么项目,为什么做这个,,,然后都是日语要求,,代码规范要求非常高,就连他妈的空格多打一个都review过不过去,测试也是自己做完自己测试的,测完然后交给别人检测一遍,通过了再交给小日本,规范要求太多了!不知道你你们各位在公司都做的是什么,是不是有自己的实际项目,,,能学到很多东西,

对日外包前途未卜华信暂停上市计划

侯继勇 "他9日去日本开会,当天就发生了一次5级左右的地震,没想到第三天就发生了9级强震!不过还好,一个小时前他登机了."13日,东软一位员工家属接受记者采访时颇有劫后余生的庆幸. 东软公关经理杨喜文告诉记者,东软日本业务类型为离岸和在岸,在岸开发和客户基本都不在震中,所以对业务短期影响不大.从灾后日本整体经济走势方面来判断,影响程度应该在救灾告一段落后才能评估. 由于地理位置相近,日语环境相对较好,日本软件外包向中国转移时首选大连,大连素有"对日软件外包门户"之称

要不要去java对日外包,很纠结,对日外包好不好

问题描述 最近学校有一个免费的java外包培训,说是对日外包,很纠结,不知道该不该去,对日外包好不好,待遇怎么样?对日外包和国内的一些软件公司有什么区别? 问题补充:你们是哪一年? 解决方案 当年东软 来我们学校招人 去大连实训一个月,那边过去的都是对日外包,看了下培训的科目,一个月讲SSH,还有oracle 最后还要做一个项目验收撒的感觉很水,后来听回来的同学说 那不是很水,是非常水!!!我一同学后来去做对日外包的测试,据说 很恼火,工资还不高,还要学日文...so 能不去就尽量不去,就算去,

华信因日本地震暂停上市计划对日外包前途未卜

侯继勇 北京报道 "他9日去日本开会,当天就发生了一次5级左右的地震,没想到第三天就发生了9级强震!不过还好,一个小时前他登机了."13日,东软一位员工家属接受记者采访时颇有劫后余生的庆幸. 东软公关经理杨喜文告诉记者,东软日本业务类型为离岸和在岸,在岸开发和客户基本都不在震中,所以对业务短期影响不大.从灾后日本整体经济走势方面来判断,影响程度应该在救灾告一段落后才能评估. 由于地理位置相近,日语环境相对较好,日本软件外包向中国转移时首选大连,大连素有"对日软件外包门户&qu

没钱有团队、没钱有项目、有钱没项目没团队

项目 不知你听过自己身边朋友说过自己创业,有项目有团队有资源就是缺乏资金.没有钱对于很多人来说之前的一切都是空说,没有钱怎运营项目呢?没有钱团队吃什么呢?至少开始时候一些吃饭钱也需要吧.还有一些开拓资源资金方面等,数数还真不少呢?       没钱有团队.没钱有项目.这路照样有人走,你是怎样创业的?      没钱有团队,缺钱确实对于创业者来说是一个不好的开端,但在一个创业集体里,我觉得人和才是最重的,也就是团队,这主要要看你有一个什么样的团队,是一个全方面互补型团队还是一个东拼西凑纯为利益走在

易观网无法正常访问 页面显示网站维护中

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 易观页面 1月5日,据网友反映,易观国际旗下易观网从4日开始无法正常访问.易观网页面显示,网站维护中,请稍候再行访问. DoNews 1月5日消息 1月5日,据网友反映,易观国际旗下易观网从4日开始无法正常访问.易观网页面显示,网站维护中,请稍候再行访问. 登陆易观网,首页显示"网站维护中,请稍候再行访问"的提示字样. 易

软件开发-软件外包项目收款周期如何设置?

问题描述 软件外包项目收款周期如何设置? 假设有一个外包软件项目,项目价10万元,周期3个月.开始干之前收一笔10%,项目第一次交付第一版收30%,第一版交付满一个月收20%(三个月开发周期借宿).进入维护周期,维护周期一年,每个季度7.5%,最后一个季度结束后 10天内追加 12%.(全部收款结束). 现在我想请问,为了适当维护好 开发者 的利益,收款周期应该如何调整? 按照出现数字的地方,具体应该如何设置?