vs2019中\r的问题

使用vs2019调用print()函数时,使用了\r回车,但是光标后面自己多了个空格把段首第一个字母给覆盖了
比如

#include <stdio.h>
int main(void)
{
    float salary;
    printf("test\r");
    return 0;
}

打印出来之后的结果为

img

#include <stdio.h>
int main(void)
{
    float salary;
    printf("test\r12");
    return 0;
}

打印出来的结果为

img

请问各位,为什么后面会多一个空格啊

'\r'是回车,前者使光标到行首,(carriage return)
'\n'是换行,后者使光标下移一格,(line feed)
用\r是使光标移动到行首,此时的空格实际是光标的位置,只是光标把原有数据覆盖了