C++和C语言在同一条件下哪个速度更快?

https://www.luogu.org/problemnew/show/P1219

这是洛谷上的一道水题,传统的八皇后问题。那我们就用C++和C分别编写代码看看它们哪个的速度更快。

#include
int ans[14],check[3][28]={0},sum=0,n;
void eq(int line)
{
    if(line>n)
    {
        sum++;
        if(sum>3) return;
        else
        {
            for(int i=1;i<=n;i++) printf("%d ",ans[i]);
            printf("\n");
            return;
        }
    }
    for(int i=1;i<=n;i++)
    {
        if((!check[0][i])&&(!check[1][line+i])&&(!check[2][line-i+n]))
        {
            ans[line]=i;
            check[0][i]=1; check[1][line+i]=1; check[2][line-i+n]=1;
            eq(line+1);
            check[0][i]=0; check[1][line+i]=0; check[2][line-i+n]=0;
        }
    }
}
int main()
{
    scanf("%d",&n);
    eq(1);
    printf("%d",sum);
    return 0;
}

现在,分别用g++和gcc编译运行一下,用Linux下的Time命令。

如图:C++和C语言在同一条件下哪个速度更快?_第1张图片

可以看到C++明显比C快。

你可能感兴趣的:(C++和C语言在同一条件下哪个速度更快?)