用char[]存一个中文字,每个元素的为负数是如何得出来的

用char[]存一个中文字,每个元素的为负数是怎么得出来的?
用char[]存一个中文字,每个元素的为负数是如何得出来的
C++里我用char[]一个汉字“我”,然后调试的时候发现char[]数组里的前两个元素都是负数(最后一个是结束的'\0'我知道),这两个负数值是怎么得出来的?

使用的是VS2010的Win32控制台项目,默认就是使用UNICODE的了。我去查了一下UNICODE表,“我”字UNICODE编码是6211,但无论我化成二进制怎么弄,6211都搞不出-50和-146来,求解
------解决方案--------------------
-50 --> 0xce
-46 --> 0xd2
百度一下“我 ced2”,就可以看出这是GB2312
------解决方案--------------------
http://blog.csdn.net/leonardwang/article/details/5972776
http://m.blog.csdn.net/blog/gotomic/16851317
------解决方案--------------------
项目设置里的UNICODE指的是所有API和MFC相关使用UNICODE版本,也就是后缀带W的版本
如果要指定使用UNICODE字符串,wchar_t a[] = L"我";这条语句和项目设置里的UNICODE一点关系都没有