- 论坛徽章:
- 0
|
/////////factorial.c/////////////
#include <stdio.h>
int factorial (int n)
{
if (n <= 1)
return 1;
else
return factorial (n - 1) * n;
}
////////////main.c////////////
#include <stdlib.h>
#include <stdio.h>
int factorial (int n);
int main (int argc, char **argv)
{
int n;
if (argc < 2)
{
printf ("Usage: %s n ", argv [0]);
return -1;
}
else
{
n = atoi (argv[1]);
printf ("Factorial of %d is %d. ", n, factorial (n));
}
return 0;
}
///////////////////////
网上荡来的一段程序,系统linux企业版4
编译
想问下是谁argc作用是干什么用的~?我怎么都没感觉不到他存在的意义- -!
我运行上面程序就只输了一个参数
过程:
gcc -o test main.c factorial.c
./test 5
运行结果 :Factorial of 5 is 120.
另外因为是刚接触,问下实参是怎么传递进去的,用空格来分开实参的~?
举个例子:
例如函数xx(char *buf1, char *buf2, char *buf3, char *buf4 );
在main中调用
main(int argc, char **argv)
{
...
xx(&argv[0],&argv[1],&argv[2],&argv[3]);
...
}
假设编译通过生成了out文件 test
如下执行是否正确
./test sdfdsfs dsfdsf fdsfdsfs dfdsf |
|