无法在“C”中打印欧元符号程序
我无法打印欧元符号。我正在使用的程序如下。
我已将字符集设置为 代码页 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 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
读这个:
http://www.columbia.edu/~em36/wpdos/eurodos.html< /a>
有一些部分可以为您提供很大帮助:
Read this:
http://www.columbia.edu/~em36/wpdos/eurodos.html
There are sections, which could help you a lot:
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
我使用 GCC 编译器,效果很好。输出为: €
这只适用于 C++ 和 C99
I used GCC compiler and this works fine. The output is: €
This only work with C++ and C99