使用Python将void替换为int int C ++源代码文件

时间:2017-03-04 12:45:30

标签: python nlp

我有一大堆文件,这些文件是简单的C ++程序,例如:

#include <stdio.h>
#include <iostream>
using namespace std;
void main()
{
    int n,a[100],i;
    void fen(int a[],int x);
    scanf("%d",&n);
    for(i=0;i<n;i++)
    {
        scanf("%d",&a[i]);
    }
    fen(a,n);
}
void fen(int a[],int x)
{
    int k,b=2,c,t;
    int look(int x,int y);
    for(k=0;k<x;k++)
    {
        c=a[k];
        t=look(c,b);
        printf("%d\n",t);
    }
}
int look(int x,int y)
{
    int total=1,p;
    if(x/y==0)
    {   return 0;}
    else
    {
        for(p=y;p<x;p++)
        {
            if(x%p==0)
            {
                total=total+look(x/p,p);
            }
        }
    }
    return total;
}

由于无法编译此程序,因为它应该是int mainreturn 0。在这种情况下,只需将源代码文件视为文本,如何在python中使用一些NLP技术将void替换为int并在main的末尾添加return语句功能?。

这里的困难部分是检测哪个关闭的大括号属于main函数,并在迭代文件的每一行时在其前面添加return语句。有没有快速的方法来做到这一点?

0 个答案:

没有答案