C程序在cmd中带参数运行的方法和注意事项:
1.0 运行方式——在cmd中直接敲入:
程序名【空格】参数1【空格】 参数2【空格】... 参数n【enter键结束键入】
或者
程序名.exe【空格】参数1【空格】 参数2【空格】... 参数n【enter键结束键入】
(两种方法等效)
1.1 补充内容:
int main(int argc,char** argv)
{ ... }
在main函数的参数列表中,int argc表示传入参数的个数,在含参运行后由系统自动计数,无需用户单独输入;
char** argv 二重指针可以看作是字符串数组,将用户输入的参数视作并转化为字符串储存;
2,注意事项:
1)输入的程序名和参数都会被当作字符串存储(同时程序名被认作是输入的第一个参数,即argv[0]);
2)cmd中 【空格】 起分隔程序名、各个参数的作用;
3)如果输入的参数中含有空格,则需要用 “ ” 将参数包含;
4)" " 中的所有内容都会被认作是字符,整体组成一个字符串(此时空格失去分隔参数的作用);
5)" " 中不允许再出现 " (仅允许 " " " 这种特殊情况,即输入的字符串本身就是 " );
6)" 并不起到任何的分隔作用,分隔程序名和各个参数只能使用空格;
7)程序正常运行的充要条件:
输入的参数数量不少于程序中所需要用到的参数的数量,且输入的参数的格式符合要求:参数中不能出现“ 或者参数仅仅是一个 " ;
( " 指 双引号)
3,附:一个简单的测试程序
#include <stdio.h>
int main(int argc,char** argv)
{
printf("%d\n%s\n%s\n%s\n%s\n%s\n",argc,argv[0],argv[1],argv[2],argv[3],argv[4]);
return 0;
}