august 发表于 2007-10-24 13:59:57

还是文件问题

#include<stdio.h>
void main(int argc,char *argv[])
{
    FILE *fp;
    int count=0;
    if((fp=fopen(argv,"r"))==NULL)
    {
      printf("cantopen %s",argv);
      exit(0);
    }
    while(fgetc(fp)!=EOF)
      count++;
    fclose(fp);
    printf("file %s have %d characters",argv,count);
}

为什么我在命令行里输入c:\turboc2\程序名.exe 文件名.txt
用TC的话还是没反应,没算出count ,还是在VC上才可以。。。。。怎么搞的??

shawind 发表于 2007-10-24 17:41:15


D:\\temp>dmc t.c
link t,,,user32+kernel32/noi;

D:\\temp>t
cantopen (null)

D:\\temp>t t.obj
file t.obj have 278 characters



dmc下正常,应该不是程序本身的问题。
ps. 你都用vc了,怎么还用tc那古董,这个东西很不符合c99国标的。

lw 发表于 2007-10-24 20:25:12

LZ先调试看看各个步骤是什么问题巴,此类问题估计不能够帮上

rednaxela 发表于 2007-10-24 20:51:27

同样没问题...gcc 3.4.5
rednaxela@META-030119B7BE /
$ gcc t.c -o t.exe
t.c: In function `main':
t.c:3: warning: return type of 'main' is not `int'

rednaxela@META-030119B7BE /
$ ls
bin      dochome   localmanifestmsys.batperlt.exe
contribetcincludem.icomingw   msys.icot.c   uninstall

rednaxela@META-030119B7BE /
$ t msys.bat
file msys.bat have 4637 characters
页: [1]
查看完整版本: 还是文件问题