关于给main函数传递参数问题!!!在Linux环境下, 一个程序main函数有参数,

那么linux命令行运行这程序时, 怎么给main函数传递参数。

例如

程序名为:mmap.c
参数为: 1 abcd.txt

那么在Linux命令行怎么运行。

第1个回答  2013-06-08
int main(int argc,char* argv[]);
argv是命令行参数个数 不带参运行 argc值为1

argv是命令行参数
argv[0]代表程序本身
argv[1]代表第一个参数
以此类推

mmap.c编译好之后得到二进制文件mmap

带两个参数 这样 就ok了:
./mmap 1 abcd.txt

程序中

操作系统为main传递的参数 argc 值为3
argv[0] 为 mmap
argv[1]为 1
argv[2] 为abcd.txt
三个参数都是 char*类型本回答被提问者采纳
第2个回答  2013-06-08
啊 可以执行文件 1 abcd.txt追问

你可以一步步演示以下吗??
编译
运行

我在网上也找到你这回答, 但运行就出错!

关于给main函数传递参数问题!!!在Linux环境下, 一个程序main函数有参数...
int main(int argc,char* argv[]);argv是命令行参数个数 不带参运行 argc值为1argv是命令行参数argv[0]代表程序本身argv[1]代表第一个参数以此类推mmap.c编译好之后得到二进制文件mmap带两个参数 这样 就ok了:.\/mmap 1 abcd.txt程序中操作系统为main传递的参数 argc 值为3argv[0] 为 mmapargv[1]为 1...

linux中的ls命令编程中main函数带的参数是什么意思,高手留步。_百度知 ...
这个是运行程序前给它的参数。。如果你在你程序要用这个参数的话就需要在运行前指定。。比如java HelloWorld ceshi 那么在HelloWorld的main方法里面 args就是 多个的话用空格隔开..比如java HelloWorld ceshi ceshi1 ceshi2 那么那么在HelloWorld的main方法里面 args就是 也就是说你假如你的程序是这样的...

带参数的main函数
include <stdio.h> include <stdlib.h> int main ( int argc, char *argv[] ){ int i;int max,min,total = 0;if( argc < 2 ){ printf("Usage \\n");return -1;} max = min = atoi(argv[1]);for( i = 1; i < argc; i++ ){ int t = atoi(argv[i]);if( t > max...

带参数的函数main怎么用?
main是一个函数,也能带参数。\\x0d\\x0a它的参数有两个,格式 如下:\\x0d\\x0amain(int argc, char *argv[])\\x0d\\x0a第一个是一个int型变量,表示参数的个数。\\x0d\\x0a第二个是一个字符串指针数组,数组中的每一个指针都指向一个字符串,这些字符串就是用户传给程序的参数,这些参数用用空格分开。...

如何用命令行运行java程序及输入main函数参数的输入
argc和argv是main函数的形式参数。这两个形式参数的类型是系统规定的。如果main函数要带参数,就是这两个类型的参数;否则main函数就没有参数。变量名称argc和argv是常规的名称,当然也可以换成其他名称。那么,实际参数是如何传递给main函数的argc和argv的呢?我们知道,C程序在编译和链接后,都生成一个...

带参数的main函数,应该怎样运行呢
1、首先打开编程软件,输入一个c语言的源码来测试。2、让其输出第一个int类型的数,但这样还不清晰。3、接下来使用while循环让其输出输入的字符串。4、完成后,进行编译。然后回车执行后,就能够看到输出的参数信息,说明程序已经成功获取参数。

带参数的main()
char *envp[])才是一个完整的main函数。argc是说在你运行这个执行文件时要输入的参数个数,而相对应的argv就是相应的字符串,env是环境变量,一般在你登录用户时,已经初始化了,这个可以暂时不用考虑。比如你的执行文件是test,在执行时(我一般是说在linux下的),可以是.\/test file1 file2 ...

int main(int argc,char *argv[])是什么意思?
各句程序什么意思?输出结果是什么?请帮忙解决,谢谢回答求助:这段代码不长,但要说清楚你的要求还需要比较长的一段话。首先,说一下main(int argc,char *argv[])函数的两个形参,第一个int argc,是记录你输入在命令行(你题目中说的操作就是命令行输入)上的字符串个数;第二个*argv[]是个指针数组,存放输入在...

main函数里面的参数有一个是 char * argv[],请问:argv[0],argv[1]指
这个你用dos,或者linux下,执行,才可以传入参数,直接跟在可执行文件后边就行了

关于main函数返回值和形参的问题
nt main( int argc , char *argv[] , char *envp[] )main()函数一般用int或者void形的。我比较喜欢用int型定义main。因为在结束的时候可以返回给操作系统一个值以表示执行情况。int argc 这个东东用来表示你在命令行下输入命令的时候,一共有多少个参数。比方说你的程序编译后,可执行文件是test...

相似回答