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
如果块验证失败了怎么办?
答案 0 :(得分:5)
而不是这个(你调用错误,一个参数太短):
printf("rc = %d\n");
这样做:
std::cout << "rc = " << rc << '\n';
这样,你将使用正确的C ++方式(这会立即告诉你一些事情)。 printf()
继承自C,并且本质上不安全 - 您的错误是原因的主要示例。
答案 1 :(得分:1)
我相信你缺少printf的第二个参数:
printf("rc = %d\n", rc);
答案 2 :(得分:0)
printf("rc = %d\n");
应为printf("rc = %d\n", rc);