Orangi 2015-09-22 10:32 采纳率: 0%
浏览 2497

控制台API ::WriteConsoleOutputCharacter 问题

 HANDLE hOut = ::GetStdHandle(STD_OUTPUT_HANDLE);
COORD c1 = {5, 3};
COORD c2 = {6, 3};
char*p = "成";
char a = *p;
char b = *(p+1);
::WriteConsoleOutputCharacterA(hOut, p, 1, c1, NULL);
::WriteConsoleOutputCharacterA(hOut, &b, 1, c2, NULL);
cout<<a<<b<<endl;
printf("%c", a);
printf("%c", b);

其中 通过 cout连续输出 或者printf 连续输出最后在控制台都能得到"成"
但是通过连续两次::WriteConsoleOutputCharacterA(hOut, p, 1, c1, NULL);
输出却得不到可视的结果 只能看见一片空白

  • 写回答

1条回答 默认 最新

  • lm_whales 2015-09-22 19:28
    关注

    去掉,
    cout<<a<<b<<endl;
    printf("%c", a);
    printf("%c", b);
    直接API输出
    间距拉大点

    评论

报告相同问题?