【发布时间】:2014-03-02 03:16:30
【问题描述】:
rc = daoMp.retrieveSystemData(argv[2]);
printf("rc = %d\n");
if (rc == 0) {
ErrLog("Mount point found\n");
printf("Mount point found\n");
return 4;
}
else {
ErrLog("Could not retrieve system data\n");
printf("Could not retrieve system data\n");
return -1;
}
Output: rc = -208814497
Mount point found
如果区块验证失败怎么办?
【问题讨论】:
-
看看你的第一个 printf。更仔细。
-
你已经引发了未定义行为,最好避免使用蹩脚的、类型不安全的 C 风格调用。
-
对不起,我不明白。代码的其他部分使用
if (rc < 0)之类的东西,我也遵循了同样的方法。我在这里想念什么?有人可以帮我吗? -
看看答案。 rc 等于 0 但你不打印 rc,你打印的是垃圾(-208814497)
-
您使用 C++ 编写,但这段代码读起来像 C。答案很简单:don't write like it were C。对于新手来说,C 风格更容易出错,对于没有经验的人,我强烈反对。