變數繼承如果直接在interface 內宣告instance variable 在子類別都可以直接引用,如果 ... %c, 8-bit unsigned character (unsigned char), printed by NSLog() as an ... ... <看更多>
unsigned宣告 在 C 語言的潛規則型態轉換 的推薦與評價
... 型態和函數內部使用該變數時的型態不同; 函數的回傳值和宣告的不同 ... promote時要判斷使用 unsigned 還是 signed 整數依照下面的順序promote:. ... <看更多>
unsigned宣告 在 [問題] 關於unsigned char如何比大小- 看板C_and_CPP 的推薦與評價
我想要讀入一個raw的512*512灰階圖檔作濾波
所以byte為單位將每個pixel存進矩陣裡
又因為pixel裡面的值應為0~255而非-128~127
所以我將矩陣宣告如下
unsigned char img[512][512];
接下來因為用3*3的mask與原圖作convolution後
我把它存到一個新的矩陣(512+3-1=514)
unsigned char newimg[514][514];
後來發現因為conv出來的數值有可能超過255或低於0
於是作了如下的for loop做修正
for (int i=0; i<514; i++)
for (int j=0; j<514; j++)
{
if (newimg[i][j]>255)
newimg[i][j]=255;
else if (newimg[i][j]<0)
newimg[i][j]=0;
}
但發現build會出現
warning: comparison is always false due to limited range of data type
我想可能是char無法跟整數直接比較大小
於是用了一個很笨的方法...
重新宣告一個double a
把img的值先assign給它再做比較
程式可以跑而且圖形也是正確的
但仍然會出現
warning: converting to `unsigned char' from `double'
想問大家要怎樣作才能讓warning不再出現
而且又可以讓unsigned char裡頭的值比大小?
謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.35.1.66
... <看更多>