A bug in MSDN 2005

原创 2007年09月12日 10:55:00

Recently when I am programming using Visual C++, I referenced to MSDN 2005. However, when looking up `_mbsinc' and `_mbcdec', I found a bug in MSDN 2005.

In MSDN 2005, the _mbsinc topic contains:

..._mbsinc recognizes multibyte-character sequences according to the multibyte code page currently in use...

Note that MSDN says it uses the current multibyte code page. However in the _mbsdec topic:

The output value is affected by the setting of the LC_CTYPE category setting of the locale; see setlocale for more information. _mbsdec recognizes multibyte-character sequences according to the local currently in use

Note in the above description, firstly, it says the "local" currently in use. It's a typo which should be "locale". Second, the current locale is _different_ from the the current multibyte code page. The current multibyte code page, which can be set in the Control Panel, is usually 936 on Simplified Chinese Windows systems. The current locale, however, is often set to a western one (may be "C") by default.

In MSDN 2005, there is another topic named "Locale". You can find it by typing "setlocale" in Index and look for "Locale" in the index results. Now in that page you can see that _mbsinc and _mbsdec are not listed in the table. It means that they both use the current multibyte code page rather than the current locale.

So it is a bug in MSDN 2005.

I don't know how Borland C++ Compiler 5.5 deals with locales. But as I observe, its mblen function uses the current multibyte code page. It is also possible that the default locale is set to the current multibyte code page, however it is not proven.

New: 20070912 22:01, after my testing, I confirmed that Borland _mbclen and mblen both use the locale, and the locale is set to the system default when the program is up and running.

MSDN查询技巧

http://msdn.microsoft.com(谷歌搜索,后加site:msdn.microsoft.com) http://www.gfsoso.com/ 创建各种类型的控件类MSDN查找WC...
  • qq125096885
  • qq125096885
  • 2015年04月02日 00:49
  • 586

MSDN如何安装

MSDN如何安装 问题描述:
  • zshuaihua
  • zshuaihua
  • 2014年08月21日 10:16
  • 1943

VS2012使用 MSDN教程

VS2012安装默认只安装Help Viewer,如果想要安装文档的话,需要去官网下载。网址如右:https://www.microsoft.com/zh-CN/download/details.as...
  • liuyuehui110
  • liuyuehui110
  • 2017年06月15日 18:25
  • 531

在VS2010中安装MSDN

1.帮助中找“管理帮助设置” 2.第一次装msdn时让选择安装地点,要选个大点的盘安装,进入如下界面,选择从磁盘安装内容 3.选择msdn的位置,我的vs2010默...
  • wangbeibei23
  • wangbeibei23
  • 2015年11月21日 20:50
  • 572

如何使用MSDN获取API相关帮助

MSDN使用帮助 一 启动MSDN 启动方式1 通过开始菜单启动:     启动方式2 通过IDE的帮助菜单启动:   启动方式3 在开发环境中...
  • u013166875
  • u013166875
  • 2013年12月16日 21:50
  • 1563

MSDN值得学习的地方

作者:朱金灿来源:http://blog.csdn.net/clever101          我一直认为:如果你没有乔布斯那样的天才,能够从头脑中原创出好产品,那么最好先学习分析好的产品,它到底好...
  • clever101
  • clever101
  • 2016年01月25日 22:32
  • 1594

谈一下MSDN和下载原版windows7

一、关于MSDN网站和msdnitellyou MSDN 的全称是 Microsoft Developer Network。这是微软公司面向软件开发者的一种信息服务。MSDN 实际上是一个以 Vis...
  • liups
  • liups
  • 2016年02月05日 10:45
  • 3544

微软MSDN订阅介绍

可能大家对MSDN这个词比较陌生吧,偶尔做个系统下载镜像的时候会碰到MSDN版这个词汇,除此之外,对于MSDN再没有其他认识,今天我就为大家科普一下MSDN订阅。 先说一下我的MSDN订阅的来源...
  • xTheodore
  • xTheodore
  • 2014年08月05日 00:26
  • 981

MSDN的使用及VC6.0的调试

MSDN的使用及VC6.0的调试 1.MSDN的使用方法 1.1使用上下文关联帮助 按下F1键,可从MSDN库中得到上下文相关帮助。你选择一个基于当前窗口和光标位置的主题,同时你将看到包含上下文...
  • mitesi
  • mitesi
  • 2014年03月17日 22:43
  • 1937

【SQL Server】SQL2005的安装与配置、简单使用

印象中,以前电脑不发达,自身编程经历不多的时候,由于Microsoft SQL Server版本众多,在不同版本的windows下必须要求装相应版本的SQL Server,否则有可能出现兼容性的问题,...
  • yongh701
  • yongh701
  • 2015年12月29日 20:30
  • 7725
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:A bug in MSDN 2005
举报原因:
原因补充:

(最多只允许输入30个字)