现有一VC程序,
一个c程序,该c程序是在DOS环境下并工作带参数。在VC程序中要调用该c程序,不带参数到好办,但问题带参数的如何于给原来的c程序的main()函数提供参数???

解决方案 »

  1.   

    WinExec("c:\\abc.exe /a /b",SW_SHOW);
      

  2.   

    argc为参数个数
    argv[]为参数数组
    你的dos下的c程序需要根据main函数输入的参数。
    然后只需要按照楼上的方法调用就行了
    或者使用
    exter "c"{
    //some delarations
    }
    改写一下
      

  3.   

    ShellExecute("程序名", , , "参数",);
      

  4.   

    你们说的方法我也知道
    但我不想生成两个文件,我有那个C语言的代码,为什么不把那个文件包含在VC的文件里面,
    在VC里面调用那个main()函数,而不是调用c语言编译出来的可执行程序,
    这样不就只有一个文件了吗。
      

  5.   

    void yourfun(){
    main(0, NULL);
    }
      

  6.   

    void yourfun(){
    char s[1][1];
    main(1, s);
    }
      

  7.   

    void yourfun(){
    char s[] = "options ";
    main(1, &s);
    }
      

  8.   

    lsgfgs(李氏) 
    能不能再详细点?
      

  9.   

    一个程序中只能有一个入口点main()函数吧。
      

  10.   

    Compiling...
    'main' : cannot convert parameter 2 from 'char [4][50]' to 'char ** '
    还有#define main Main
    没见到是干什么用的阿?
      

  11.   

    原来的c 语言的main 函数的参数是不固定的
    那么是不是在
    void yourfun(){
    char s[1][1];
    main(1, s);
    }
    中用固定的s数组调用main会出现问题?
      

  12.   

    不需要使用vararg,命令行参数个数可变,难道你调用时也这样?