c - 从字符串中获取要打印的符号数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c - 从字符串中获取要打印的符号数相关的知识,希望对你有一定的参考价值。

我需要找出从字符串中打印多少个符号。假设我有这段代码:

char    buf[200];

strcpy(buf, "33[31m");     //Red color control sequence
strcat(buf, to_utf8(L'漢'));
strcat(buf, "a");
printf("%s", buf);

哪里

to_utf8(wchar_t c);

将给定的白色字符转换为其utf8表示形式并返回其字符串

仅打印2个红色符号(“汉字”)。

如果我要跑:

strlen(buf);

我会得到9的长度

我需要的是一个函数,它将计算要打印的符号的数量,即在这种情况下:2

我需要一个没有任何外部库的解决方案。

关于这个问题的任何想法?

答案

万一有人还有这个问题:

这个问题的解决方案是知道我的光标在哪里。这家伙有一个很好的低级code,可以读取光标位置。

这不是我的问题的直接答案,但在我按下键之前和之后知道光标的位置,解决了我的特定问题。

以上是关于c - 从字符串中获取要打印的符号数的主要内容,如果未能解决你的问题,请参考以下文章