【TechTarget中国原创】问:当我在C语言里写一个CICS程序,算术运算(arithmetic operations)在CICS执行里不能工作。我收到了来自CICS和程序的两个值。单独这个附加的状态不工作,这是怎么回事呢?
答:事情变得混乱有好几点,因此你不要一起添加正确的事情。
你收到了EBCDIC里的数字吗?如果收到,确保把数字串转换成二进制的逻辑在正确工作。也要复查输入域的偏移(offsets)和长度以确保转换逻辑不包括垃圾信息。
如果你使用多个架构或使用memcpy在一个变量里得到数字的话,可能有存储调整问题。
记住,原始C不支持压缩数字。所以,如果你尝试添加两个压缩数字,你必须使用IBM或自定义写入程序。
在任何情况下,你需要找到一些方法使用调试工具在添加东西期间检验你程序的执行。如果你没有调试工具,你可以试着在攻击状态前或后强制终止异常或权利。