我是C语言世界的新手,所以请多多包涵。我一直在寻找答案,但还没有清楚地了解它。

我正在尝试输入和输出,例如,欧元符号€(扩展字符值)。我想使用十六进制字节组合。对于欧元,它们是:0xE2、0x82、0xAC。我了解在C ++中,您可以简单地使用\ u20ac,而在C中则不是这样。

我尝试将十六进制值分配给一个int,但这对我不起作用。我也尝试过使用欧元符号的十进制值。

我的计划背后的想法是接受用户输入(例如100欧元)并将其转换为其他货币。因此,区分货币符号是我手头的主要问题。除了我尝试过的方法之外,还有其他方法可以解决此问题吗?

最佳答案

基本上可以用3个char表示。

因此,您可以这样做。

char str[] = { 0xE2, 0x82, 0xAC, 0x00 };
printf("str: \"%s\"\n", str);


输出:


  str:“€”

08-06 17:19