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 - 从字符串中获取要打印的符号数的主要内容,如果未能解决你的问题,请参考以下文章

查询以获取 Oracle 10g 中下一行中的 % 符号数 = 字符串长度

使用Android导航组件时如何从后台获取片段?

如何从自定义列表视图中获取选定项目并在 toast 消息中打印?

获取当前可见的Android Fragment

L1-002 打印沙漏 (20分)------使用c和python实现!

如何从该片段中的 onItemSelectedListener 中获取微调器单击的项目?