1. 请问下面代码中,if(argc!=4) 起什么作用
从你的代码片段 加上编程经验来判断 argc!=4 意思应该是 当用户输入的参数个数不为四时引导用户输入
2. 【急】 if (argc == 1) 到底有什么作用?
argc == 1 就是说参数的个数为0.
argc是参数个数,定义为int
argv是字符串数组,存的是参数,定义为char**或者char* argv[]
比如你编译好的程序为my.exe
在命令行执行 my.exe 1 2 3
那argc就是4,argv[0]是"my.exe",argv[1]是"1",argv[2]是"2",argv[3]是"3";
希望对你有帮助。
3. if( argc == 2 && (img = cvLoadImage( argv[1], 1)) != 0 )什么意思
argc 是指命令行输入参数的个数,argv存储了所有的命令行参数。假如你的程序是123.exe,在命令行运行该程序123.exe xxx,其中argc为2,argv[0]为123.exe,argv[1]为xxx。 argc==2指2个参数,img = cvLoadImage( argv[1], 1)指加载argv[1]的内容给img。
4. c语言中if(x=y-4)是什么意思
如果从编译器的角度来说:
1、-的优先级是4,=的优先级是14,所以先运算y-4的值;
2、相当于这样写
x=y-4;
if(x)
{
}
3、通常不建议if(x=y-4)这么写程序,没有任何可读性
如果满意,请采纳
5. argc<2是什么含义?代码如下
说的是运行该程序事没有输入参数。
比如你的运行程序名为 prog.exe的话,要正确运行的话需要被处理的文件,可能是
prog scene
argc<2是指你没有输入后面的文件名,用下面的方式运行了
prog
6. if(argc < 4) { printf("usage:\n"); printf("%s host port name\n",argv[0]); exit(1); }
这个一般放在主函数开始的位置。
对程序运行时传入的参数进行判断。
这里当传入的参数不为4个时,打印出错提示信息,并退出程序。
比如,编译出来的程序名字叫abc
那么如果在输入的命令abc后面不是三个参数,就会打印
usage:
abc host port name
提示要输入host, port,以及name三个参数程序才可以正常运行。
7. if(argc!=3) {printf("parameters error!\n"); exit(0); }什么意思
判断argc是否等于3,不等于则打印parameters error!;
exit(0);表示正常退出的意思,如果exit(1)则表示异常退出。
8. C语言argv[]与argc各有什么作用
argc与argv[]是启动C程序时系统传入的,可以直接使用。argc是参数数量,argv是参数表数组。如命令行为“prg.exe 1 2 3”,则argc为4,argv[0]="prg.exe",argv[1]="1",argv[2]="2",argv[3]="3"。以下是LCC-WIN32模板文件(加了一行显示所有参数语句):
/* --- The following code comes from e:\lcc\lib\wizard\textmode.tpl. */
#include
#include
#include
void Usage(char *programName)
{
fprintf(stderr,"%s usage:\n",programName);
/* Modify here to add your usage message when the program is
* called without arguments */
}
/* returns the index of the first argument that is not an option; i.e.
does not start with a dash or a slash
*/
int HandleOptions(int argc,char *argv[])
{
int i,firstnonoption=0;
for (i=1; i< argc;i++) {
if (argv[i][0] == '/' || argv[i][0] == '-') {
switch (argv[i][1]) {
/* An argument -? means help is requested */
case '?':
Usage(argv[0]);
break;
case 'h':
case 'H':
if (!stricmp(argv[i]+1,"help")) {
Usage(argv[0]);
break;
}
/* If the option -h means anything else
* in your application add code here
* Note: this falls through to the default
* to print an "unknow option" message
*/
/* add your option switches here */
default:
fprintf(stderr,"unknown option %s\n",argv[i]);
break;
}
}
else {
firstnonoption = i;
break;
}
}
return firstnonoption;
}
int main(int argc,char *argv[])
{
if (argc == 1) {
/* If no arguments we call the Usage routine and exit */
Usage(argv[0]);
return 1;
}
/* handle the program options */
HandleOptions(argc,argv);
/* The code of your application goes here */
for (int i=0;i<argc;i++)printf("%s ",argv[i]);
return 0;
}