C/C++の宿題を片付けます 106代目
■ このスレッドは過去ログ倉庫に格納されています
0343デフォルトの名無しさん
2008/05/09(金) 14:00:12argv[1]やargv[3]は文字列。
strlen()は文字列の長さを測る。
そしてaは文字列ではなくてint。だからstrlen(a)は間違い。
(strlen(a) > 1000)ではなくて、(a > 1000)だろう。
switch(argv[2])が間違い。
文字列(charへのポインタ)を渡すのは間違い。
case "mul":などと書くのもコンパイルできない。
strcmp()を使えと書いてあるので素直にそちらを使う。
if (strcmp(argv[2], "add") == 0) {
printf("%d + %d = %d\n", a, b, a + b);
} else if (strcmp(argv[2], "sub") == 0) {
printf("%d - %d = %d\n", a, b, a - b);
} else if (strcmp(argv[2], "mul") == 0) {
printf("%d * %d = %d\n", a, b, a * b);
} else if (strcmp(argv[2], "div") == 0) {
printf("%d / %d = %d\n", a, b, a / b);
}
で充分。
■ このスレッドは過去ログ倉庫に格納されています