Re: 請問C編譯器是否會將 char 預設視為 unsigned char
|
||||
---|---|---|---|---|
資深會員
|
多謝 biko 大解惑,真是觀察入微啊,
我現在就是在用 Hi-tech PICC18, 而 Hi-tech 能預設 char 為 unsigned char 真是太好了, 感謝。
發表於: 2008/12/25 9:27
|
|||
|
Re: 請問C編譯器是否會將 char 預設視為 unsigned char
|
||||
---|---|---|---|---|
資深會員
|
正確答案應該要去看Compiler的手冊,因為Hitech PICC18預設的char就是unsigned char ,這是沒錯的,因為我有確認過,而且MPLAB裡也有這個選項(預設是不選取的)。
因為這個例子,所以我如果要真正用到有正負號的char的話,都會加上signed char,這是最保險的。 另外建議還是要做正確的宣告,一來可以防止程式在移植時(使用不同的compiler時)出問題,再來,也可以方便其他人看懂您的程式。 Attach file: (0.00 KB)
發表於: 2008/12/25 0:22
|
|||
我相信解決問題的方法不只一種,所以我在回答同好的問題時或者提出與主題不同的方案,
請不要以此做為攻擊的目標,畢竟我也只是想和大家討論如何解決問題而已… 解決問題最重要,..... |
||||
|
Re: 請問C編譯器是否會將 char 預設視為 unsigned char
|
||||
---|---|---|---|---|
初級會員
|
不會。
char = 127 ~ 0 ~ -126
發表於: 2008/12/24 22:43
|
|||
|
請問C編譯器是否會將 char 預設視為 unsigned char
|
||||
---|---|---|---|---|
資深會員
|
有個函數宣告如下:
void FUN(char NUM){ 敘述..... } 而傳入 NUM 的都是整數, 請問一些常用的C編譯器例如:C18、Hi-Tech CCS 等, 是否會將 char NUM 視為 unsigned char NUM 連編譯呢? 如果是的話,這樣就可以寫短一點了, 謝謝。
發表於: 2008/12/23 16:14
|
|||
|