命令行参数(带参main)

简介: int main(int argc, char * argv[]){ ……} 参数argc就代表启动程序时,命令行参数的个数。C/C++语言规定,可执行程序程序本身的文件名,也算一个命令行参数,因此,argc的值至少是1。

int main(int argc, char * argv[])
{
 ……
}
 参数argc就代表启动程序时,命令行参数的个数。C/C++语言规定,可执行程序程序本身的文件名,也算一个命令行参数,因此,argc的值至少是1。
参数argv是一个数组,其中的每个元素都是一个char* 类型的指针,该指针指向一个字符串,这个字符串里就存放着命令行参数。
argv[0]指向的字符串就是第一个命令行参数,即可执行程序的文件名
argv[1]指向第二个命令行参数
argv[2]指向第三个命令行参数……。
#include <stdio.h>
int main(int argc, char * argv[])
{
 for(int i = 0;i < argc; i ++ )
  printf( "%s\n",argv[i]);
 while(argc-->=1)
 {
  *(++argv);//这样就不输出文件名啦
 }
   
 return 0;
}

将上面的程序编译成sample.exe,然后在控制台窗口输入:
sample para1 para2 s.txt 5 4
输出结果就是:
2.18(垃圾)//对应文件名sample
para1
para2
s.txt
5
4
注意:main函数不可以被其它函数调用,因此不可能从程序内部获得实参,只能通过操作系统的命令行,argc自动赋初值
要想将空格也作为参数,需加上双引号

目录
相关文章
|
4月前
VS2015中main函数带参数运行
VS2015中main函数带参数运行
|
2月前
|
程序员 Shell C语言
【C/C++ main函数】深入探索C++中的main函数及其参数
【C/C++ main函数】深入探索C++中的main函数及其参数
78 0
|
5月前
|
存储 设计模式 算法
[C++] static静态成员变量/函数的用法
[C++] static静态成员变量/函数的用法
35 1
|
8月前
|
Go 测试技术
init函数与main函数
init函数与main函数
init函数与main函数
|
9月前
|
Java
main参数
main参数
33 0
main参数
|
12月前
|
编译器 C++
C++ 是否存在一个在main()主函数之前就执行的函数? 这个可以有!
C++ 是否存在一个在main()主函数之前就执行的函数? 这个可以有!
88 0
|
Java
main主函数(主方法)里头的参数String[] args有啥作用?
很多老铁不清楚JAVA主方法中main()里面的的参数是什么意思,以及有什么作用,接下来给大家用最通俗易懂的话来讲解。
119 0
main主函数(主方法)里头的参数String[] args有啥作用?
|
C语言 C++
你真的了解main函数吗?
你真的了解main函数吗?
226 0
你真的了解main函数吗?
|
C# Docker 容器
C#方法与参数 常见命名空间汇总 using的使用main方法参数
C#方法与参数 常见命名空间汇总 using的使用main方法参数
116 0
C#方法与参数 常见命名空间汇总 using的使用main方法参数
|
C语言 固态存储
可变参数宏__VA_ARGS__和...
__VA_ARGS__ 是一个可变参数的宏(gcc支持)。实现思想就是宏定义中参数列表的最后一个参数为省略号(也就是三个点)。这样预定义宏_ _VA_ARGS_ _就可以被用在替换部分中,替换省略号所代表的字符串。
2305 0