3

我想在我的 MAC 终端上调试 c 程序,我使用“gcc -o deng.c” ps 路径是正确的,但它说“没有这样的文件或目录”。我已经安装了 xcode 和 Commd 行。

#include <stdio.h>
#include <string.h>
#define maxn 1000+10

int a[maxn];
int main()
{
    int i,j,n,k,first=1;
    memset (a,0,sizeof(a));
    scanf("%d%d",&n,&k);
    for(i=1;i<=k;i++)
        for ( j = 1; j <=n; j++)
            if(j%i==0)
                a[j]=!a[j];
    for(i=1;i<=n;i++)
        if(a[i])
        {
            if(first) first =0;
            else
                printf(" ");
            printf("%d",i);
        }
    printf("\n");
    return 0;
}
4

2 回答 2

13

您需要使用 lldb,Mac 上 gdb 的替代品,

gcc -g deng.c -o deng
lldb ./deng
于 2017-09-14T10:32:39.817 回答
10

-o指定输出文件。这不是你想要的。你可能打算跑

gcc -g deng.c

-g告诉编译器包含调试符号。调用二进制文件(您可以通过运行a.out将程序名称更改为)denggcc -g deng.c -o deng

要实际运行程序,您必须运行./a.out(或者./deng,如果您使用 -o deng 运行 gcc)。

要调试程序,请运行gdb a.out(或gdb deng)然后键入run. 有关 gdb的更多帮助,请阅读文档

于 2013-10-18T20:25:50.103 回答