无法在“C”中打印欧元符号程序

发布于 2024-08-16 12:43:12 字数 576 浏览 8 评论 0原文

我无法打印欧元符号。我正在使用的程序如下。

我已将字符集设置为 代码页 1250 ,其中 0x80 代表欧元符号。

节目
=======

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

int main()
{
    printf("Current locale is: %s\n", setlocale (LC_ALL, ".1250"));
    printf("Euro character: %c\n", 0x80);
    getchar();
    return 0;
}

输出
======
当前区域设置是:English_India.1250
欧元字符:?

其他详情
=============
操作系统:Windows Vista
编译器:vc++ 2008 Express版

I am unable to print the euro symbol. The program I am using is below.

I have set the character set to codepage 1250 which has 0x80 standing for the euro symbol.

Program
=======

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

int main()
{
    printf("Current locale is: %s\n", setlocale (LC_ALL, ".1250"));
    printf("Euro character: %c\n", 0x80);
    getchar();
    return 0;
}

Output
======
Current locale is: English_India.1250
Euro character: ?

Other details
=============
OS: Windows Vista
Compiler: vc++ 2008 express edition

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

平定天下 2024-08-23 12:43:12

读这个:
http://www.columbia.edu/~em36/wpdos/eurodos.html< /a>

有一些部分可以为您提供很大帮助:

  • 在 Windows NT、2000 或 XP 中的全屏 DOS 和命令控制台中显示欧元符号
  • 在 Windows 2000 和 XP 中的 DOS 和命令控制台窗口中显示欧元符号(对 TrueType 字体的内置支持)
  • 在 DOS 中显示欧元以及 Windows 2000 和 XP 中的命令控制台(位图和 TrueType 字体)

Read this:
http://www.columbia.edu/~em36/wpdos/eurodos.html

There are sections, which could help you a lot:

  • Display the euro-symbol in full-screen DOS and command consoles in Windows NT, 2000, or XP
  • Display the euro symbol in DOS and command console windows in Windows 2000 and XP (built-in support for TrueType fonts)
  • Display the euro in DOS and command consoles in Windows 2000 and XP (bitmap and TrueType fonts)
套路撩心 2024-08-23 12:43:12

0x80 字符被错误地表述为欧元符号,它是 Padding Char。
请参阅此处: http://bugs.mysql.com/bug.php?id=28263

如果我没记错的话,它必须在 0x120 左右,尝试在 for 循环中打印从 120 到 130

the 0x80 char is falsely stated as the euro sign, it is the Padding Char.
See here: http://bugs.mysql.com/bug.php?id=28263

If I remember correctly it must something around 0x120, try printing in a for loop from 120 to 130

追我者格杀勿论 2024-08-23 12:43:12
#include <stdio.h>

int main()
{
 printf("\u20AC");
return 0;
}

我使用 GCC 编译器,效果很好。输出为: €


这只适用于 C++ 和 C99

#include <stdio.h>

int main()
{
 printf("\u20AC");
return 0;
}

I used GCC compiler and this works fine. The output is: €


This only work with C++ and C99

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文