小编use*_*336的帖子

我可以使用哪些免费工具生成c代码的程序依赖图

我想从C源代码生成程序依赖图(PDG).我找到了解释它是怎么做的论文,但都使用了商业CodeSurfer工具.

有没有可以完成这项工作的免费工具或开源项目?

c free static-analysis

10
推荐指数
1
解决办法
4154
查看次数

如何在linux中的连续磁盘块中存储文件

我想在linux上的磁盘上存储一些数据.我希望这些数据存储在物理磁盘中的连续磁盘块中.如果为了将此数据写入普通文件,可能该文件占用的块在物理磁盘中不连续.有办法做这个工作吗?

linux filesystems store block

8
推荐指数
1
解决办法
4025
查看次数

为什么这个scanf()的依赖图 - 使用Frama-C的程序看起来像这样?

我使用Frama-C工具生成该程序的依赖图(main.c).

    #include<stdio.h>
    int main()
    {
        int n,i,m,j;
        while(scanf("%d",&n)!=EOF)
        { 
            m=n;
            for(i=n-1;i>=1;i--)
            {   
                m=m*i;
                while(m%10==0)
                {
                     m=m/10;
                }
                m=m%10000;
            }  
            m=m%10;
            printf("%5d -> %d\n",n,m);
        }
       return 0;
    }
Run Code Online (Sandbox Code Playgroud)

命令是:

    frama-c -pdg -dot-pdg main main.c 
    dot -Tpdf main.main.dot -o main.pdf
Run Code Online (Sandbox Code Playgroud)

结果是 在此输入图像描述 我的问题是为什么语句"m = m*i;","m = m%10000"不映射到节点.结果似乎不正确,因为代码中有三个循环.

c static-analysis frama-c

5
推荐指数
1
解决办法
784
查看次数

标签 统计

c ×2

static-analysis ×2

block ×1

filesystems ×1

frama-c ×1

free ×1

linux ×1

store ×1