精華區beta C_and_CPP 關於我們 聯絡資訊
※ 引述《hotaku (幻世神創之境界)》之銘言: : 當我寫一個字串指標變數 char* pcText_ = "??("; : 也就是兩個問號加上一個左小括號的組合 : 執行到下一行時這個字串內容就變成 "[" : 而且沒有對這個字串做任何的操作 : 值就變掉了 : 想請問有沒有人遇到相同的情況? : 使用的開發平台是VC++ 2003 這是 ANSI C 規定的 trigraph http://en.wikipedia.org/wiki/Digraphs_and_trigraphs#C 一共有以下的 trigraph 被定義: ??= # ??/ \ ??' ^ ??( [ ??) ] ??! | ??< { ??> } ??- ~ 這些是為了當年沒有這些字的 keyboard 而定的 例如你可以寫 ??=include<stdio.h> int main(void) ??< printf("Hello, world!??/n"); return 0; ??> 要閃開的話你可以在兩個 ? 中間插一個反斜線 把後面的 ? 給 "escape" 掉 \? 和 ? 是一樣的意思 -- **** 說: 不要期望一個精神力差不多已經見底的人阿Orz -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.28.92 ※ 編輯: LPH66 來自: 140.112.28.92 (12/08 22:02)
VictorTom:哇靠, 小弟第一次看到這種用法, 拜....<(_ _)> 12/08 22:04
VictorTom:請問民明書房那本"冷知識"的書有記載這件事嗎XD 12/08 22:05
ledia:trigraph 我看過就忘, 從沒有想過會有用到的一天 XD 12/08 22:05
ledia:m(_ _)m 我也拜一下 12/08 22:05
hotaku:感謝您,這真是太神奇了 <(_ _)> 12/08 22:14
yoco315:啊呀 好久不見這種用法~ 12/08 22:48
conan77420:好噁心的東西XD 12/08 22:54
freesamael:太神奇了,從來不知道這個XD 12/08 22:56
yoco315:看起來好像 ASP 哈哈哈... 12/08 23:02
final01:這好像以前有人問過 不知在哪篇 搞compiler的人才會知道吧 12/08 23:20
james732:之前不知道為什麼有看到 覺得超神奇的.... 12/09 00:01
cutecpu:推 12/09 08:13
wanwan2:推~~ 長知識 12/09 13:47
MOONRAKER:應該是有人問到C++有沒有and or not的時候問的 12/09 16:33
flashphp:推~~ 看C版長知識 12/09 17:12
weiyucsie:orz... 12/09 21:28
phterry:剛試了一下真有其事,不過 gcc 一定要加 -trigraphs 才能編 12/09 21:44
mepass:剛剛試了一下 Dev似乎不能這樣搞 12/09 23:34
VictorTom:Dev-C++用的是gcc/g++吧, 所以照樓樓上說的, 自己加參數 12/09 23:41
VictorTom:再編看看:) 12/09 23:41
mepass:加在哪啊 我加在程式最上面也不行.... 12/09 23:46
VictorTom:加在程式最上面!!?? 我覺得你還是開console直接下指令 12/09 23:50
VictorTom:吧Orz 12/09 23:50
VictorTom:不確定是不是: 工具->編譯器選項->編譯器=> 12/09 23:51
VictorTom:當呼叫編譯器時.... 那邊....@_@" 12/09 23:52
mepass:可以了耶 又學到一個XD 12/09 23:56
revivalworld:C++ 之父出的書中有提到這個 12/10 01:43
taiwan2000:朝聖~ 12/13 16:43