求助----main函数入参打印
麻烦高手帮忙看下,先谢了
windows下:
int _tmain(int argc, _TCHAR* argv[])
{
int i;
printf("There are %d parameters\n",argc);
for (i=0; i<argc; i++)
{
printf("argv[%d]=%s\n", i, argv[i]);
}
system("pause");
return 0;
}
运行的时候只打印每个入参的第一个字符,这是怎么回事??
下面是linux环境下的代码,运行正常,可以输入完整的入参字符串
int main(int argc, char *argv[])
{
int i = 0;
printf("printf %d prameters:\n",argc);
printf("%s\n", *argv);
do
{
printf("argv[%d]=%s\n", i,argv[i]);
system("pause");
i++;
argc--;
}while(argc);
return 0;
}
[解决办法]
windows下肯定使用UNICODE编码了, 看看是否定义UNICODE宏了
对于UNICODE, 可以用 wprintf 输出