[問題] putchar的問題

看板C_and_CPP作者 (司馬雲)時間11年前 (2013/03/25 16:14), 編輯推噓0(005)
留言5則, 3人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) gcc 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): putchar("0123456789abcdef"[test&15]); test是int,輸出是把test的數字用16進位表示而已 不過我看了很多putchar的說明,都看不懂為什麼可以樣寫 有人可以幫忙解釋一下嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.87.72.253

03/25 16:21, , 1F
"0123456789abcdef" 這串會被換成一個 const char *
03/25 16:21, 1F

03/25 16:22, , 2F
拿這個 pointer 取 index 為 test & 15 的值
03/25 16:22, 2F

03/25 16:23, , 3F
取到的 char 當作 putchar 的引數
03/25 16:23, 3F

03/25 16:27, , 4F
謝謝樓上!!原來是這樣
03/25 16:27, 4F

03/25 23:25, , 5F
"0123456789abcdef"是const char[17]不是 const char*
03/25 23:25, 5F
文章代碼(AID): #1HK0Tzc_ (C_and_CPP)