怎么在 windows 控制台输出象棋符号? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
BornGuilty
V2EX    C++

怎么在 windows 控制台输出象棋符号?

  •  
  •   BornGuilty 2022-05-17 15:50:35 +08:00 via Android 2854 次点击
    这是一个创建于 1309 天前的主题,其中的信息可能已经有所发展或是发生改变。

    作业要求做一个在控制台运行的国际象棋游戏。

    我想用符号代表棋子,但是没法输出国际象棋的符号, 如 。 应该是编码方式的问题。

    尝试了网上说的_setmode()函数的方法,改编码方式。

    然而似乎只能输出前几百个 unicode 符号,像\u2656 这个符号,输出后只能显示方块。

    到底如何输出国际象棋符号呢?

    11 条回复    2022-05-18 12:10:55 +08:00
    imn1
        1
    imn1  
       2022-05-17 15:54:26 +08:00   1
    不是编码问题,控制台的字体不支持这些符号,需要更换字体
    ysc3839
        2
    ysc3839  
       2022-05-17 16:29:02 +08:00 via Android   1
    用 WriteConsoleW 直接输出 UTF-16 字符串,不要用 C stdio ,因为内部有各种转换处理。同时可能要更改字体。
    0d
        3
    0d  
       2022-05-17 17:06:52 +08:00 via Android   1
    更换支持这些符号的字体。
    https://www.chessvariants.com/d.font/unicode.html
    codehz
        4
    codehz  
       2022-05-17 17:17:59 +08:00 via Android
    (改成 windows terminal 试试看
    kirory
        5
    kirory  
       2022-05-17 18:23:23 +08:00
    Your font is not support i .
    Try use hanzi '车' rather than '', or use windows terminal.
    sazima
        6
    sazima  
       2022-05-17 18:28:31 +08:00
    可以这样:

    -------
    | 车 |
    -------
    -------
    | 将 |
    -------
    des
        7
    des  
       2022-05-17 18:32:48 +08:00 via iPhone
    @sazima 你这个……但是人家要的是国际象棋啊
    inframe
        8
    inframe  
       2022-05-17 18:44:59 +08:00
    Ubuntu Bash 下可以输出 ,要不考虑一下用 Linux 算了
    sazima
        9
    sazima  
       2022-05-17 20:16:07 +08:00
    @@@@ @@@@ @@@@ @@@@
    @@@@///@@@@///@@@@///@@@@
    &&&&&&&&&&&&&&&&&&&&&&&&&
    #########################
    @@@@@@@@@@@@@@@@@@@@@

    #@@@@@@@@@@@@@@@.
    #@@@@@@@@@@@@@@@.
    #@@@@@@@@@@@@@@@.
    #@@@@@@@@@@@@@@@.
    #@@@@@@@@@@@@@@@.

    &@@@@@@@@@@@@@@@@@@@@@#
    ,@@@@@@@@@@@@@@@@@@@@@@@@@

    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    Tumblr
        10
    Tumblr  
       2022-05-17 22:37:35 +08:00   1
    显示方块儿是字体问题,以下是 Windows Terminal 用更纱黑体 Nerd ( Sarasa Term SC Nerd )的输出:
    mmdsun
    11
    mmdsun  
       2022-05-18 12:10:55 +08:00 via iPhone
    cmd 靠上的位置右键有个属性的选项,里面改字体
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1497 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 16:32 PVG 00:32 LAX 08:32 JFK 11:32
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86