LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 945|回复: 3

能否帮我看看这个c程序错在哪里?

[复制链接]
发表于 2004-9-11 06:48:39 | 显示全部楼层 |阅读模式
1.我昨天利用windows下的一个类似turbo c的东西想编译个东西,可是上面说编译没成功,有错误,那么错在哪里呢?

2.我这个是在windows下生成的扩展名是.c的文件,我能否把他放到linux去编译,怎么编译呢,我昨天用gcc test.c没成功,这个我有点不会.


源文件如下test.c :
#include <stdio.h>
#include <string.h>
#include <conio.h>

char xx[50][80];
int maxline=0;/*文章的总行数*/


int ReadDat(void);
void WriteDat(void);

void CharConvA(void)
{
{int i,j;
char ch,th;
for (i = 0;i<maxline;i++)
{ch=xx[strlen(xx-1)];
for(j=strlen(xx)-1;j>0;j--)
{th =xx[j];
th>>=4;
if(j)xx[j]=th+xx[j-1];
}
xx[0]+=ch;
}
}
}


void main()
   {clrscr();
   if(ReadDat())
      {printf("数据文件 IN.DAT不能打开! \n\007");
      return;
}
CharConvA();
WriteDat();
}
int ReadDat(void)
    {FILE*fp;
int i=0;
char*p;
if((fp=fopen("IN.DAT","r")) == NULL)return 1;
while(fgets(xx,80,fp)!=NULL)
    {p=strchr(xx,'\n');
if(p)*p=0;
i ++;
}
maxline=i;
fclose(fp);
return 0;
}
void WriteDat(void)
{FILE*fp
int i;
clrscr();
fp=fopen("OUT10.DAT","w");
for(i=0;i < maxline;i++)
  {printf("%s\n",xx);
fprintf(fp,"%s\n",xx);
}
fclose(fp);
}
发表于 2004-9-11 10:17:21 | 显示全部楼层
[PHP]
#include <stdio.h>
#include <string.h>
//#include <conio.h>

char xx[50][80];
int maxline=0;/*文章的总行数*/


int ReadDat(void);
void WriteDat(void);
void CharConvA(void) {
        int i,j;
        char ch,th;
        for (i = 0;i<maxline;i++) {
                ch=xx[strlen(xx-1)];
                for(j=strlen(xx)-1;j>0;j--) {
                        th =xx[j];
                        th>>=4;
                        if(j)xx[j]=th+xx[j-1];
                }
                xx[0]+=ch;
        }
}


int main() {
        system("cls");
        if(ReadDat()) {
                printf("数据文件 IN.DAT不能打开! \n\007");
                return;
        }
        CharConvA();
        WriteDat();
        return 0;
}

int ReadDat(void) {
        FILE*fp;
        int i=0;
        char*p;
        if((fp=fopen("IN.DAT","r")) == NULL) return 1;
        while(fgets(xx,80,fp)!=NULL) {
                p=strchr(xx,'\n');
                if(p)*p=0;
                i++;
        }

        maxline=i;
        fclose(fp);
        return 0;
}

void WriteDat(void) {
        FILE*fp;
                int i;
        system("cls");
        fp=fopen("OUT10.DAT","w");
        for(i=0;i < maxline;i++) {
                printf("%s\n",xx);
                fprintf(fp,"%s\n",xx);
        }
        fclose(fp);
}

[/PHP]

我在XP下编译通过。你的那个flrscr()我用GCC编译有问题,好像找不到这个函数。估计是我编译时没加参数。我用system("cls")代替了。你要是在Linux下可以用system("cls")替换
发表于 2004-9-11 10:23:49 | 显示全部楼层
如果要把turbo C的程序移植到linux下,恐怕只能和标准C的库函数。
发表于 2004-9-12 10:28:46 | 显示全部楼层
哈哈,“#include <conio.h>”
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表