作者moonskyex (藍調迷思)
看板MATLAB
標題Re: [心得] 用 Matlab 寫 MEX 函數加速 vol.3
時間Sun Sep 9 16:28:54 2012
: // print input content
: for(i=0; i<input_dim_x; i++) // x
: for(j=0; j<input_dim_y; j++) // y
: // notice: data type is "float", you shall use "%f" insted of "%d"
: printf("%f\n", in[i + j*input_dim_x]);
: }
想請問原文這一段最後說資料是float所以要用float把資料印出。
可是input的資料明明就是double阿!
我把%f改成%d後發現還真的不行!要用float才能正常輸出。
這是怎麼回事呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 134.208.48.41
1F:推 okgogogo:%d是整數,%f是浮點數,這在C格式化輸出章節有交,很基本 09/09 18:00
2F:→ okgogogo:資料是浮點數請用%f替換%d 09/09 18:01
3F:→ moonskyex:是說在C裡面的 double跟float都統一用%f輸出嗎? 09/09 18:45