关于argc,argv的问题
函数:
int main(int argc, char *argv[])
{
int a,b;
cout<<*argv[1]<<endl;
cout<<*argv[2]<<endl;
a=*argv[1];
b=*argv[2];
cout<<a<<endl;
cout<<b<<endl;
return 0;
}
运行输入: 执行程序名字 2 3
运行后,*argv[1]和*argv[2]的值为2和3,但为什么a和b的值就不是2,3了呢
[解决办法]
argv[]是指针数组,argv[1]是一个字符串,你要转换成int在赋值
- C/C++ code
#include <iostream>using namespace std;int main(int argc, char*argv[]) { int a,b; cout <<*argv[1] <<endl; cout <<*argv[2] <<endl; a= atoi(argv[1]); b= atoi(argv[2]); cout <<a <<endl; cout <<b <<endl; return 0; }
[解决办法]
数据类型不一样,一个是字符串,一个是 整数