gpt4 book ai didi

c - 如何使用 Const Char* 打印 ASCII 扩展字符?

转载 作者:太空宇宙 更新时间:2023-11-04 06:44:44 26 4
gpt4 key购买 nike

我有一个函数可以像这样在屏幕上打印字符:

void print(int colour, int y, int x, const char *string)
{
volatile char *video=(volatile char*)0xB8000 + y*160 + x*2;
while(*string != 0)
{
*video=*string;
string++;
video++;
*video=colour;
video++;
}
}

我想打印字符 254 in decimal ,但我需要使用存储在 const char* 上。我不能尝试 print(0x0F, 0, 0, 0xFE);,因为这会在没有强制转换的情况下引发指针错误,那我该怎么做呢?

最佳答案

使用 C 的十六进制表示法将字符嵌入字符串中:

print(0x0f, 0, 0, "\xfe");

正如人们所指出的,您可能希望对代码进行一些美化,也许可以为 VGA framebuffer base address 添加一个符号名称。 .

关于c - 如何使用 Const Char* 打印 ASCII 扩展字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2140177/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com