如何在 C 中打印零宽度 space 字符

How do I print a zero width space character in C

我试过使用 printf 打印零宽度 space
printf("%c", '​');

每当我尝试编译时都会收到警告
warning: multi-character character constant [-Wmultichar]
当我 运行 程序时,我得到白色 spaces 而不是不可见字符,所以我在字符之间放置字母以查看是否得到任何不同的结果,但它什么也没打印 printf("a%cb\n", '​');

这个问题的答案可以从这个post

中找到

如果您有正确的代码,这将让您打印任何 unicode 字符。在这种情况下,0 宽度 space 是 0x200B

#include <stdio.h>
#include <wchar.h>
#include <locale.h>

int main() {
    setlocale(LC_CTYPE, "");
    wchar_t space = 0x200B;
    wprintf(L"%lc\n", space);
}