看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) CodeBlocks 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 我想要用char印一些特殊符號,像是照書上的作法 char ch=228; printf("%c",ch); 預期要能印出Σ符號,結果什麼都沒有出現…… 餵入的資料(Input): 預期的正確結果(Expected Output): Σ 錯誤結果(Wrong Output): 什麼都沒有 程式碼(Code):(請善用置底文網頁, 記得排版) char ch=228; printf("%c",ch); 補充說明(Supplement): 我還很菜,真的不知道是出什麼問題了, 請各位大大幫解惑QQ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.103.41 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1463188394.A.EFC.html
shec1213: C的char是用ASCII 查查看對照表 228應該不是可顯示字元 05/14 09:51
noodleT: ascii 並沒有 Sigma 的符號 05/14 12:00
chienweichih: Char 的範圍是-125~124 05/14 12:34
那如果我想指定變數為特殊符號的話該怎麼做呢? 附帶一問,如果是想指定成中文字呢? 感謝~~ ※ 編輯: Dminor (140.116.103.41), 05/14/2016 12:46:49
Caesar08: C++14標準,char是-128到127或0到255。不是-125~124 05/14 13:21
我寫C~~(這有差別嗎> <) 我該怎麼讓printf("%c",ch);印出Σ符號呢
longlongint: code page 437 05/14 15:19
LiloHuang: 先呼叫 SetConsoleOutputCP(437); 就會印的出來 05/14 16:15
LiloHuang: 通常預設會是 CP950,延伸閱讀 https://goo.gl/gf001f 05/14 16:18
LiloHuang: 英語系國家預設通常是 CP437,屬於 extended ASCII 05/14 16:21
LiloHuang: 因此書上的作法算是很常見的 :P 05/14 16:22
LiloHuang: 現在大部分都用 Unicode 字元居多,可考慮用 _setmode 05/14 16:24
LiloHuang: _setmode(_fileno(stdout), _O_U16TEXT); 05/14 16:25
LiloHuang: wprintf(L"\u03A3"); // 詳閱 https://goo.gl/qCX6Ed 05/14 16:26
LiloHuang: 如此一來Σ要跟中文字一起印到 Console 才不會有問題 05/14 16:28
感謝! ※ 編輯: Dminor (140.116.103.41), 05/15/2016 12:36:58
chienweichih: 抱歉 我怎麼突然冒出124這奇怪的數字 07/17 02:44