作者 主題: C語言語法問題?  (閱讀 4278 次)

0 會員 與 1 訪客 正在閱讀本文。

dearjack

  • SA 苦力組
  • 懷疑的國中生
  • **
  • 文章數: 75
    • 檢視個人資料
C語言語法問題?
« 於: 2011-02-22 14:34 »
int k = 0 , j;

char string[15];

string[k] = '0' + j //這個好像是要把j這整數放入陣列裡面是嗎?那 '0' 這個是什麼意思呢?

喵喵咩咩

  • 可愛的小學生
  • *
  • 文章數: 13
    • 檢視個人資料
回覆: C語言語法問題?
« 回覆 #1 於: 2011-02-22 15:03 »
可以參考 ASCII 的表
意思是從表中 '0' 這個字元開始, 加上 j 個以後的 ASCII 字元

dearjack

  • SA 苦力組
  • 懷疑的國中生
  • **
  • 文章數: 75
    • 檢視個人資料
回覆: C語言語法問題?
« 回覆 #2 於: 2011-02-22 16:19 »
剛剛查了一下ASCII碼,那 j=106 0=48 以十進位來說,

string[k]='0'+j //這樣就是106+48=154 , 這樣有什麼意義?


sudezhong

  • 可愛的小學生
  • *
  • 文章數: 4
  • 性別: 男
    • 檢視個人資料
回覆: C語言語法問題?
« 回覆 #3 於: 2011-02-22 17:19 »
ASCII码中,'0'等于48;
那个字母j,是一个整数,因没有被赋值,它的值是未知的;
string[k]='0'+j就等于string[0]='0'+j,因j的值是未知的,所以string[0]的值也是未知的;
你查的那个'j'=106,并不是j的值,而是ASCII码中的值。

sudezhong

  • 可愛的小學生
  • *
  • 文章數: 4
  • 性別: 男
    • 檢視個人資料
回覆: C語言語法問題?
« 回覆 #4 於: 2011-02-22 17:29 »
如果sting[0]='0'+1的话,那么string[0]就是‘1’;
sting[0]='0'+2,那么string[0]就是‘2’;
。。。。。。

查下ASCII表,‘0’是48,如果j等于-1,string[0]就是48-1=47所对应的那个字符。

这样,你明白了么?

dearjack

  • SA 苦力組
  • 懷疑的國中生
  • **
  • 文章數: 75
    • 檢視個人資料
回覆: C語言語法問題?
« 回覆 #5 於: 2011-02-23 12:00 »
明白了,謝謝

sudezhong

  • 可愛的小學生
  • *
  • 文章數: 4
  • 性別: 男
    • 檢視個人資料
回覆: C語言語法問題?
« 回覆 #6 於: 2011-02-23 14:06 »
能帮助别人,感觉挺满足的,简体中文和繁体中文俺都能看懂,嘿嘿。
就是我码不出繁体,忒郁闷了。呜呜~ ;D