int _tmain(int argc, char *argv[])
我想取得argv的运行参数进行分析。可是无论如何都得不到,我用的是VS2005,望高手指点一二
例:myapp.exe aosnow想打印出aosnow,不管怎么样下面的方法都只是打印aosnow的第一个字母a
printf("参数数量:%d\n", argc);
printf("参数信息:%s\n", argv[0], argv[1]);
在百度找了好多资料都没办法

解决方案 »

  1.   

    应该是编码的问题,用_tprintf 函数,_tprintf(_T("%s"), argv[0]);...
      

  2.   

    按你的方法,在CMD下什么也打印不出来了
      

  3.   

    在console下,一般是没有命令参数的,除了应用程序名外,所以一般是argc = 1, argv[0] = 应用程序名,
    你用char* p = argv[0]试一下就知道。当然,如果你在命令方式或在IDE里设了参数,argc就是参数的个数,通过argv查看到所以参数。
      

  4.   

    printf("参数信息:%s\n", argv[1]);//这样就可以了
    其实argc是参数个数,你这里是2
    argv[0]是应用程序的路径。
    agrv[1]是aosnow
    如果还有像这样的,myapp.exe aosnow op
    argv[2]就是op了
      

  5.   

    唉,都已经说了,
    printf("%s", argc[1]);
    只打印了aosnow的a。人人都知道这样的方法,我不是要这样的答案继续待高手
      

  6.   

    你应该那里设置错了~~~
    #include <iostream>
    using namespace std;int main(int argc, char *argv[])
    {
    printf("参数数量:%d\n", argc);
    printf("%s\n",argv[0]);
    printf("%s\n",argv[1]);
    return 0;
    }上面的代码,都能将参数打印出来。
    也是vs2005~~~~
      

  7.   

    问题出在
    include <tchar.h>
    以及_tmain(int argc...如果去掉头文件直接使用main(int argc...
    则没有问题,但原因何在,请高人指点吧。