gcov 如何分支,如果有几个 ||情况?

问题描述

我使用 gcov 测试了以下示例案例:

void main (void) {
    int x = 5:

    if ( x == 5 || x == 4 || x == 3) {
        printf("Hello 1\n");
    }

    switch (x) {
    case 3:
    case 4:
    case 5:
        printf("Hello 2\n");
        break;
    }

}

根据 gcov,交换机为所有三种情况创建了一个分支。但是 gcov 用 if 创建了哪些分支?如果它期望所有可能的 True/False 组合,则无法进行测试,因为没有一个值可能会给出多个条件 True。

见附件gcov结果。 @L_404_0@

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)