首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

奇怪的有关问题,命令行参数传递出错

2012-02-07 
奇怪的问题,命令行参数传递出错?#includestdafx.h #include iostream#include cstddefusingstd::cin

奇怪的问题,命令行参数传递出错?
#include   "stdafx.h "
#include <iostream>
#include <cstddef>
using   std::cin;
using   std::cout;

int   main(int   argc,   char*   argv[])
{
char   const*key=(argc> 2)?argv[1]: " ";
//char   const   *key= "10 ";
size_t   key_length=(argc> 2)?strlen(key):1;
//size_t   key_length=2;
char   ch;
for(size_t   k=0;   std::cin.get(ch);   k=(k+1)%key_length){
std::cout.put(ch^key[k]);
}
getchar();
return   0;
}

如果我运行7.19.exe   "10 "结果好似没收到参数,但我如果像上面注释直接赋值的话就可以达到我要的结果,对输入字符进行异或运算

[解决办法]
char const*key=(argc> =2)?argv[1]: " ";

argc> 2 -> argc> =2

热点排行