2011-10-16 70 views
0

我想利用我的C++代碼中的libconfig庫來讀取數據。我有一個bitmask二進制值,我試圖從外部文件讀入。問題是當我讀取數據時,我相信libconfig正在將該整數解釋或解析爲基數爲10的數字,而不是基數2的數字,從而影響該值。我查看了libconfig FAQ,它指向十六進制表示爲「0x」,但二進制文件(「0b」前綴不起作用)。C++ libconfig解析錯誤?

任何人都知道一個解決辦法,我有很多這些位掩碼,它很麻煩,將所有的基數2轉換爲他們的基數10計數器部分。

在libconfig文件示例:

位掩碼= 00000000001000000010010100001101;

回答

0

我不熟悉libconfig,但你能說服它讀取這些位掩碼作爲字符串嗎?然後在你自己的代碼中進行轉換。

+0

嗯,聰明 - 我可以給這個鏡頭。 – 5k1zk17

+0

如果您不能將它作爲字符串讀取,您仍然可以將base10號碼轉換爲字符串並從那裏進行轉換。 –

+0

是的 - 我可以將它看作字符串,然後簡單地使用strtol庫 - 謝謝! – 5k1zk17