0

I am trying to make a command line calculator, and I made up a partial code for it, just for adding numbers, I am jsut taking it one step at a time. But I am suppose a number then a space then the math function then a space then the second number. But for some reason I am always getting one for the output. Can anybody tell me what I am doing wrong with this.

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main(int argc, char *argv)
{
int answer;
if(argv[2]=='+')
answer=argv[1]+argv[3];
printf("%i",answer);
}

2
Contributors
1
Reply
2
Views
12 Years
Discussion Span
Last Post by Dave Sinkula
0

argv[1] and argv[3], if available, are strings. Convert them to integers before attempting to add them; atoi may be useful for this.

argv[2] is a string also. Use argv[2][0] for the first character.

[edit]D'oh! Didn't even look at main, which should be declared like this:

int main(int argc, char *argv[])
This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.