求助:关于C 编程 命令行参数类型的问题

重复贴和参考价值不大的帖子,版主维护
回复
头像
timmy26
帖子: 19
注册时间: 2008-10-24 23:28
送出感谢: 0
接收感谢: 0

求助:关于C 编程 命令行参数类型的问题

#1

帖子 timmy26 » 2009-01-18 17:38

在C中 命令行参数是否只能为 字符串指针数组?

小弟的一个C程序需要从命令行得到整型的参数
但是 当我输入
./myprogram 3 时,得到的却是 3 的ascii 值 或者是一个地址值(视代码情况而定,因为我修改了多次)
请问 我该如何才能得到我需要的整数呢?
谢谢!
头像
peachcolor
帖子: 898
注册时间: 2006-05-20 14:03
送出感谢: 0
接收感谢: 0

Re: 求助:关于C 编程 命令行参数类型的问题

#2

帖子 peachcolor » 2009-01-18 17:53

一般是这么写的
int main(int argc, char **argv)

argv 是字符参数数组,比如你那个例子,argv就是{"myprogram", "3"}
argc 是参数个数,你的例子里argc=2

可以用atoi函数将字符串转为int,比如
int param = atoi(argv[1]);
头像
lerosua
论坛版主
帖子: 8455
注册时间: 2007-11-29 9:41
送出感谢: 0
接收感谢: 0
联系:

Re: 求助:关于C 编程 命令行参数类型的问题

#3

帖子 lerosua » 2009-01-18 18:08

and

代码: 全选

int main(int argc,char *argv[])
头像
timmy26
帖子: 19
注册时间: 2008-10-24 23:28
送出感谢: 0
接收感谢: 0

Re: 求助:关于C 编程 命令行参数类型的问题

#4

帖子 timmy26 » 2009-01-18 18:52

谢谢!
回复

回到 “归档贴”