我用“gcc -fprofile-arcs -ftest-coverage test.c”编译了以下程序:
int main() {
int a = 1;
int b = 1;
a && b;
}
运行程序后,调用“gcov -bc test.c”报告至少有 4 个分支中的 50% 被占用一次。为什么 gcov 说程序有四个分支,而不是两个?运行以下程序后,gcov 正确报告 50% 的 2 个分支至少被占用一次:
int main() {
int a = 1;
if (a)
a = 0;
else
a = 1;
}