C ++-如何将空格键转换为破折号以输入cmd

由于空格会中断字符串输入,因此我想知道当您在cmd中实时命中空格时如何使破折号出现。到目前为止,这是我正在使用的:

if (GetKeyState(VK_SPACE) & 0x20)
                {
                    //insert a '-'
                }
cin >> name;

顺便说一句,我知道该方法仅适用于Windows,但是整个项目只是一个适合C ++的小cmd游戏,因此我不打算将其移植。