全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1201
推到 Plurk!
推到 Facebook!

列印16進位出錯 (C語言)

答題得分者是:暗黑破壞神
Smallcat7315
一般會員


發表:19
回覆:22
積分:7
註冊:2005-05-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-10-22 09:54:30 IP:218.168.xxx.xxx 未訂閱
#include     void main ()
{
        char a=0x80;
        printf("%X",a);
}    
a的資料型態不能更改能有辦法印出嗎?? 出來卻是FFFFFF80 怎麼會變成這樣子>_< 麻煩大家幫幫我 謝謝 發表人 -
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-10-22 10:59:17 IP:211.22.xxx.xxx 未訂閱
不太懂你要表達什麼?
include     void main ()
{
 char a=0x80; //這樣指定 a = 128,對於a字元型態來說已經溢位。所以印出來是負數。
 printf("%X",a);
}
因此要宣告為整數才行。:
void main(void)
{
 int a;     a = 0x80;
 printf("0x%X",a);
}
----------------------- Practice makes perfect.
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-10-22 11:16:41 IP:59.104.xxx.xxx 未訂閱
        unsigned char a=0x80;
Smallcat7315
一般會員


發表:19
回覆:22
積分:7
註冊:2005-05-02

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-10-22 11:27:33 IP:218.168.xxx.xxx 未訂閱
引言: 不太懂你要表達什麼?
include     void main ()
{
 char a=0x80; //這樣指定 a = 128,對於a字元型態來說已經溢位。所以印出來是負數。
 printf("%X",a);
}
因此要宣告為整數才行。:
void main(void)
{
 int a;     a = 0x80;
 printf("0x%X",a);
}
----------------------- Practice makes perfect.
a的資料型態不能更改能有辦法印出嗎?? 發表人 - smallcat7315 於 2005/10/22 11:28:50
Smallcat7315
一般會員


發表:19
回覆:22
積分:7
註冊:2005-05-02

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-10-22 11:38:27 IP:218.168.xxx.xxx 未訂閱
引言:
        unsigned char a=0x80;
原來是這樣子 謝謝版主的提示
系統時間:2024-05-10 11:25:18
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!