如何從代表浮點值的機器表示的字節數組中打印十六進制浮點常量,如C99中所指定的那樣?例如給定從字節數組中打印十六進制浮點常量
union u_double
{
double dbl;
char data[sizeof(double)];
};
一個例子十六進制浮點常數是形式
0x1.FFFFFEp127f
這種形式的字面語法規範可以在IBM site中找到的字符串,並在語法的簡要說明是這裏的GCC site。
printf函數可用於在具有標準庫中的C99功能的平臺上執行此操作,但我希望能夠使用標準C89或C在MSVC中執行不支持C99的打印++ 98。
謝謝,但我需要執行標準C++ 98或C89該打印,而無需訪問C99型printf ;-( +1。 – grrussel 2009-08-10 11:22:38
,那麼你應該在你的問題中添加特定的請求:) – dfa 2009-08-10 11:24:59
由於許多標準庫都有可用的源代碼,因此您可以從vaprintf獲取格式代碼並將其用於輸出。 – plinth 2009-08-10 12:23:10