我使用命令行参数时遇到问题

时间:2012-03-31 10:49:55

标签: c command-line command-line-arguments command-prompt

//我的程序假设从命令提示符中执行操作并拖出数字并对两个数字应用//操作但结果总是错误为什么?

#include "stdafx.h"
#include<stdio.h>
#include<tchar.h>
#include<stdlib.h>

int main(int argc, char*argv[])
{
    if(argc !=4)
    {
        printf("number of CLP is incorrect\n");
        return 0;
    }

    int num1 = atoi(argv[2]);
    int num2 = atoi(argv[3]);
    int res ;

    if(argv[1] == "+")
        res = (num1 + num2);

    else if(argv[1]=="-")
        res = (num1-num2);

    else if(argv[1]=="*")
        res = (num1*num2);

    else if(argv[1]=="/")
        res = (num1/num2);

    printf("You enterd Operation %s and the Resualt = %d\n" , argv[1] , res);
    return 0;
}

这是我的代码,如果有更好的方法,请告诉我。

1 个答案:

答案 0 :(得分:3)

您无法将字符串与==使用if(strcmp(argv[1], "+") == 0)进行比较,也可以在其余代码中进行比较。