C/C++の宿題片付けます 138代目

このエントリーをはてなブックマークに追加
726デフォルトの名無しさん
>>722
char op;
なのに、scanf("%s", &op);
として、1文字でも入力すれば、
*op に入力された文字
*(op + 1) に '\0' が入るのでオーバーフローする。
>>721 は根本的に間違っている。

char op[2];
scanf("%s", &op[0]);

が、まだましだが、これでも 2 文字以上入力してしまうと、オーバーフローする。
ちゃんと対応するには、fgets() などを使うしかない。