推 Fenikso:unsigned short s; in.read((char*)&s, 2); 03/03 21:16
→ walker2009:想請問,原先我也有想到用unsign看是不是可以省去 +128 03/03 21:21
→ walker2009:可是這樣是否會有值錯亂的問題?? 03/03 21:21
→ walker2009:因為在 char 中原先 msb 是 1 的原本應該是 負值 03/03 21:22
→ walker2009:可是在存到 unsigned 後 似乎會變成正數,且比原先 msb 03/03 21:22
→ walker2009:是 0的還大 03/03 21:22
→ walker2009:感謝 F 大多次幫我解決困難XDDDD 03/03 21:24
推 Fenikso:會不會錯亂要看那個值對你的意義@@ 03/03 21:25
→ walker2009:嗯...因為我是想保持住原有的大小順序,之後才能轉回來 03/03 21:26
→ walker2009:這樣的話除了加上2的power之外, 還有好的做法嗎 @@ 03/03 21:27
推 Fenikso:如果只是要signed/unsigned互轉的話直接cast就好 03/03 21:30
→ Fenikso:結果會是一樣的.. 順序其實不重要 03/03 21:31
→ walker2009:這樣我了解了!!! 感謝 F大 ^^ 03/03 21:32
推 godman362:int n = atoi(c.str()); 試試看,我之前都是這樣處理 03/03 21:35
→ godman362:打錯,是int n = atoi(c.c_str()); 03/03 21:36
→ godman362:然後記得要include string.h 或是cstring 03/03 21:38
→ walker2009:馬上試試! 03/03 21:41
→ walker2009:god大我試了不成功耶Q_Q c_str 跟 str 都沒有宣告 03/03 21:45
→ walker2009:我有 include cstring 了, string.h 也試過 03/03 21:46
→ walker2009:不知道是不是 Dec C++ 的問題 03/03 21:46
推 godman362:沒啊....我都很正常啊 03/03 21:48
→ walker2009:可能是我的版本太舊了XDD 4.9.9.2 03/03 21:49
→ walker2009:還是說atoi一定要字串型態才能轉, char 不行0.0 03/03 21:50
→ walker2009:單抓一個 char 的話字尾沒有 \0 ~ 03/03 21:50
推 godman362:sorry,atoi(c.c_str()) 適用於string 03/03 21:53
→ godman362:沒注意到你的c是char型態 03/03 21:53
→ walker2009:XDDDD 感恩感恩 03/03 21:54
→ walker2009:只是每次處理圖片時要把 char 轉成 int 都讓我很頭痛 03/03 21:55
→ walker2009:今天學到不少 XDDD 03/03 21:55