cmd-C++ 命令参数的复数判断

问题描述

C++ 命令参数的复数判断

在cmd中输入参数时,判断有没有输入重复的参数
比如:
cmd : a.exe /L /L
L命令出现两次,就报错,结束程序

解决方案

 #include <stdio.h>

int main(int argc, char* argv[])
{
    for (int i = 0; i < argc; i++)
        for (int j = 1; j < argc; j++)
        {
            if (i !== j && strcmp(argv[i], argv[j]) == 0)
            {
                printf("duplicated arguments");
                return;
            }
        }
    // other code goes here.
    printf("hello worldn");
    return 0;
}

解决方案二:

最好加一个长度检查或者判断空值的函数会比较健壮

解决方案三:

在内部设定参数标志,比如此例是 isLflag, 解析出参数后,设置它为true, 下次再设置时检查此标志,如果为true, 则表示重复,报错。

时间: 2024-07-31 22:00:36

cmd-C++ 命令参数的复数判断的相关文章

cmd-C++ 命令参数的判断问题

问题描述 C++ 命令参数的判断问题 如果在cmd中输入 xxx.exe /L:xxxxx /I:xxxxx/L与/I的位置随意,只要有输入/L,就执行/L对应的操作,输入/I就执行/I的操作 解决方案 int main(int argc char *argv[]) { return 0;}argc 指明有多少个参数将被传递给主函数main()真正的参数以字符串数组(即第2个参数argv[])的形式来传递.当你输入 xxx.exe /L:xxxxx /I:xxxxx时 argc的值为2 /L:x

写批处理必备的一些命令参数使用技巧_DOS/BAT

 首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件. 其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句(for)来循环执行一条命令.当然,批处理文件的编程能力与C语言等编程语句比起来是十分有限的,也是十分不规范的.批处理的程序

HDFS命令行客户端使用,命令行客户端支持的命令参数,常用命令参数介绍

3.HDFS的shell(命令行客户端)操作 3.1HDFS命令行客户端使用 HDFS提供shell命令行客户端,使用方法如下: [toto@hadoop hadoop-2.8.0]$ hdfs dfs -ls /     (推荐使用这种方式,hdfs现在这种是最新的一种方式) Found 4 items drwxr-xr-x   - toto supergroup          0 2017-05-29 14:01 /findbugs-1.3.9 drwxr-xr-x   - toto s

Cmd 启动命令解释器 Cmd.exe 的新实例_DOS/BAT

Cmd 启动命令解释器 Cmd.exe 的新实例.如果在不含参数的情况下使用,则 cmd 显示 Windows XP 的版本和版权信息. 语法 cmd [[{/c|/k}] [/s] [/q] [/d] [{/a|/u}] [/t:fg] [/e:{on|off}] [/f:{on|off}] [/v:{on|off}] string] 参数 /c  执行 string 指定的命令,然后停止.  /k  执行 string 指定的命令并继续.  /s  修改位于 /c 或 /k 之后的 stri

详解Linux patch命令参数及用法_Linux

说到patch命令,就不得不提到diff命令,也就是制作patch的必要工具.diff命令,在制作patch文件的时候,基本上只需要使用到diff -Nau 这个参数,如果比较的是文件夹,还要加上-r参数,所以一般直接使用Naur参数. 功能说明:修补文件. 语 法:patch [-bceEflnNRstTuvZ][-B <备份字首字符串>][-d <工作目录>][-D <标示符号>][-F <监别列数>][-g <控制数值>][-i <修

linux系统下的df命令参数详解

  linux中df命令参数功能:检查文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息. 语法:df [选项] 说明:linux中df命令可显示所有文件系统对i节点和磁盘块的使用情况. 该命令各个选项的含义如下: -a 显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统,如/proc文件系统. -k 以k字节为单位显示. -i 显示i节点信息,而不是磁盘块. -t 显示各指定类型的文件系统的磁盘空间使用情况. -x 列出不是某一指定类型

linux中mount命令参数详解(nfs 参数)

1,命令格式mount命令的格式如下: mount [-t vfstype] [-o  options] device dir mount命令参数非常多,如下为与NFS相关的参数. (1)-a:把/etc/fstab中列出的路径全部挂载.(2)-t:需要mount的类型,如nfs等.(3)-r:将mount的路径定为read only.(4)-v mount:过程的每一个操作都有message传回到屏幕上.(5)rsize=n:在NFS服务器读取文件时NFS使用的字节数,默认值是1 024个字节

[收藏学习]Ubuntu中apt-get命令参数简单说明

git命令的一些参数老是记不住,需要多看多记. 收藏一文如下: 常用的APT命令参数: apt-cache search package 搜索包 apt-cache show package 获取包的相关信息,如说明.大小.版本等 sudo apt-get install package 安装包     sudo apt-get install package - - reinstall 重新安装包 sudo apt-get -f install 修复安装"-f = --fix-missing&

windows-有关cmd copy命令合并文件 /a /b开关问题

问题描述 有关cmd copy命令合并文件 /a /b开关问题 不太明吧在合并文件时要指明二进制文件还是文本文件的原因, 是和windows下文件头什么的有关吗? 是说copy命令合并文件的时候会识别文件头, 两个mp3文件合并后可以实现连续播放,就是在合并的时候去掉了第二个文件的文件头吗? 他们的区别就仅仅是在文件的最后会不会添加文件结束符吗? 解决方案 应该是写文件的时候'用二进制方式还是文本方式写文件.这两者要区分,不然文件内容会有问题. 解决方案二: 文件copy命令的源代码