51Testing软件测试论坛
标题:
关于整数与字符串的转换问题
[打印本页]
作者:
026300
时间:
2008-9-28 10:01
标题:
关于整数与字符串的转换问题
使用web_reg_save_param取回来的值为122256549986294,所用的参数为BcID_1,不知道这个值是什么类型的,感觉是string,想把他转为整数,
因为后边的许多值是在该值的基础上递增的。使用了语句
bcid_1=lr_eval_string("{BcID_1}");
a=atol(bcid_1);
a=a+1;
itoa(a,bcid_2,10);
但是运行是发现两个错误:
第一,a取到的初始值为305905654,与122256549986294完全不同,但是bcid_1却正确,转化出错?不太理解;
第二,运行结果报错:Error: C interpreter run time error: ConfigCircuitAction3.c (73): Error -- memory violation : Exception ACCESS_VIOLATION received.所指的行就是最后一句话“itoa(a,bcid_2,10)”
声明的语句为:
int a; char *bcid_1,*bcid_2; long atol(const char *bcid_1);
各位指导一下,到底什么地方出问题了?
作者:
026300
时间:
2008-9-28 10:40
大家快来看看
作者:
zj101582
时间:
2008-9-28 11:10
标题:
回复 1# 的帖子
itoa(a,bcid_2,10)”
问下LZ bcid_2 是什么?
目标字符串 是 bcid_1 吗?
作者:
026300
时间:
2008-9-28 13:37
回楼上,目标字符串BC_2是定义的指针型变量。找到问题的原因了,在lr中支持的long型变量长度不够。
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2