1. C语言中main那两个参数有啥用的,详细说明并举例一下
argc表示参数的个数;第二个参数中argv[0]为自身运行目录路径和程序名,argv[1]指向第一个参数、argv[2]指向第二个参数、等等。以下面的代码为例:
#include<stdio.h>
intmain(intargc,char**argv)
{
for(intnum=0;num!=argc;++num)
printf("%s ",argv[num]);
return0;
}
直接编译运行上面的程序,此时argc的值是1,表示只有一个参数,实际上就是程序本身,参数argv[0]的内容即为生成程序的具体目录。
2. 关于给main函数传递参数问题!!!在linux环境下, 一个程序main函数有参数,
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*类型
3. linux编程,关于main函数的参数argv
不可能通过的了,buf是数组地址,你把一个指针赋给它,是不会成功的,编译报警也是正确的。
有两种改法:
1)改定义 char* buf;
2)改赋值方式,strncpy(buf, argv[1], sizeof(buf));
4. linux下main函数的参数是在栈里还是在堆里
不是的. 每一个函数就是一个堆栈. 每调用一次, 都会有指针指向它. 而变量是加在这些堆栈中的(C语言一般是在堆栈的栈顶, C++都是哪用到在哪)
学高级语言的这些一般是不用在意的, 只有学汇编才用管它.
5. 在linux下怎么运行main函数
1.运行:
本文使用一个简单的C程序(simple.c)。代码如下:
int main()
{
return(0);
}
2. 编译:
~#gcc -o simple simple.c
3. 查看可执行文件的基本信息
~#objmp -f simple
simple: file format elf32i386 architecture: i386, flags 0x00000112: EXEC_P, HAS_SYMS, D_PAGED start address 0x080482d0借助objmp这个工具,可以获得可执行文件的一些关键信息。
6. 在linux下用gcc编译C语言程序,其中main函数是带参的(argc argv,txt的文件),请问如何设置将该文件读进
main参数中argv数组中的第二个(即argv[1])为该可执行程序的第一个参数
也是托到该可执行程序上的文件的路径
有了路径,在程序中读取该路径文件内容并显示
void main(int argc,char *argv[])
{
/*读取并显示argv[1]文件的内容,学过C语言的文件读写吧*/
}
7. linux中的ls命令编程中main函数带的参数是什么意思,高手留步。
这个是运行程序前给它的参数。。
如果你在你程序要用这个参数的话就需要在运行前指定。。
比如java HelloWorld ceshi
那么在HelloWorld的main方法里面 args就是
多个的话用空格隔开..
比如java HelloWorld ceshi ceshi1 ceshi2
那么那么在HelloWorld的main方法里面 args就是
也就是说你假如你的程序是这样的
public class HelloWorld{
public static void main(String[] args) {
System.out.println(args[0]);
}
}
然后你编译
运行的时候这样运行
java HelloWorld hello
那么这个程序就会输出hello
之所以是Stirng 是因为我们只能以字符串的形式输入
名字的话随便取。。只要符合java规定就行
8. 带参数的main函数,应该怎样运行呢
1、首先打开编程软件,输入一个c语言的源码来测试。
9. linux编译的main函数的参数是怎么传值进来
方法1.
C/C++语言中的main函数,经常带有参数argc,argv,如下:
int main(int argc, char** argv)
int main(int argc, char* argv[])
这两个参数的作用是什么呢?argc 是指命令行输入参数的个数,argv存储了所有的命令行参数。假如你的程序是hello.exe,如果在命令行运行该程序,(首先应该在命令行下用 cd 命令进入到 hello.exe 文件所在目录) 运行命令为:
hello.exe Shiqi Yu
那么,argc的值是 3,argv[0]是"hello.exe",argv[1]是"Shiqi",argv[2]是"Yu"。
下面的程序演示argc和argv的使用: