将空的varchar变量与int变量进行比较

时间:2018-04-16 12:30:16

标签: c oracle-pro-c

在我的代码中,我需要比较2个变量。一个变量是int数据类型&另一种是varchar2数据类型。

为了比较我使用以下代码:

intVariable == atoi(varcharVariable.arr)

问题是当相应的varchar变量为空时,atoi返回0,这与我的业务逻辑冲突。

解决方案:改变以下条件:

intVariable == atoi(varcharVariable.arr) && strlen(varcharVariable.arr) != 0

请告知是否有更好/替代方式。提前谢谢。

最佳方式:

intVariable == atoi(varcharVariable.arr) && varcharVariable.arr[0] != 0x00

1 个答案:

答案 0 :(得分:0)

最佳方式:

intVariable == atoi(varcharVariable.arr) && varcharVariable.arr[0] != 0x00