j05014@nw0514:nagata1[50] bufovf
before
buf(Len:0) =
dmy(Len:0) =
warning: this program uses gets(), which is unsafe.
0.333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333
after
buf(Len:246) = 0.333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333
333333333333
dmy(Len:0) =
Segmentation fault
gets()関数が原因でこのような結果となる。この関数は値が許容量を超えて入力されても対応でき無いからだ。fgets()関数を使用すれ
ば文字数を指定しての利用が可能となるので問題は解決する
j05014@nw0514:nagata1[61] ufovf
0.33333333333333333333333333333333333333333333333333333333333333333333333333333333333333
333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
3333333333333333333333333333333333333333333333333333333333333333
after
buf(Len:49) = 0.3333333333333333333333333333333333333333333333
dmy(Len:0) =