我需要找出从字符串中打印多少个符号。假设我有这段代码:
char buf[200];
strcpy(buf, "\033[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,可以读取光标位置。
这不是我的问题的直接答案,但在我按下键之前和之后知道光标的位置,解决了我的特定问题。