比较两种不同类型的值

时间:2011-10-20 05:30:48

标签: c++ sql windows

我有一个带有两种数据类型的if语句,我正在相互比较。 rowCount3SQLINTEGERchval1[128]SQLCHAR。我尝试了几种不同的类型;没有成功。

我试过了:

if((SQLCHAR)rowcount3 >= (SQLCHAR)chval1)

这有时只能起作用。当我执行printf()检查返回值时,它们都打印出数字。

printf("Total of Downloads: %d\n",rowCount3);
printf("Quota of IP Address: %s\n", chval1);

我得到的最接近的是(工作时间约占60%):

if (rowCount3 >= chval1)

有人建议strcmp(),但我没有经验,所以我迷失在树林里!任何帮助表示赞赏。谢谢。

1 个答案:

答案 0 :(得分:2)

这两种类型在<sqltypes.h>

中定义如下
typedef int             SQLINTEGER;
typedef unsigned char   SQLCHAR;

如果您已定义变量,请执行以下操作:

SQLINTEGER rowCount3;
SQLCHAR chval1[128];

是不兼容的类型。您必须使用像这样的正常atoi()转换之类的转化并进行比较:

int var = atoi(chval1);
if (rowCount3 >= var)