double パラメーターに渡された int 引数は double に変換されると仮定しました。例えば
私が呼んでいる: make_line(root, "hi", 5,5,50,50);
の上:
GooCanvasItem * make_line(GooCanvasItem * parent, char * name, gdouble x1, gdouble y1, gdouble x2, gdouble y2)
{
printf("from make line: %f %f %f %f\n", x1, y1, x2, y2);
//...
}
printf
生成します:
from make line: 0.000000 0.000000 0.000000 0.000000
私がそれを呼び出すとき
make_line(root, "hi", 5.0,5.0,50.0,50.0);
正しい出力が得られます。
に変更gdouble
しdouble
ても問題は解決しないようです。