初识MFC遇到的一个问题string与ctring

来源:互联网 发布:贵州省人口老龄化数据 编辑:程序博客网 时间:2024/06/04 21:12

刚刚接触mfc写了一个很简单的BMI录入的小程序,在string和cstring上吃了大苦头;首先是vs2017版Edit Control控件关联的变量只有CString类型,没有std::string这个类型(解释一下string和std::string    std::string是在未声明use namespace std时用到的,当已经声明后就与string一样了),关于Cstring转换为string的方法很多,可以百度一下,例如cstring cstr;string str;str=cstr.GetString();(还有GetBuffer()等等),但是在vs 2017中有一个小问题,就是他默认的字符集形式是unicode,我们需要改一下,改法为项目——项目属性——常规——字符集——使用多字节字符集;这样转换就没问题了,在输出时需要以Cstring形式输出,再次将string转化为cstring即可(c_str()函数即可),然后输出就应该没什么问题了,否则的话会在string.h中弹出读写冲突错误或者是输出格式错误,对于初学者来说很是头疼。

原创粉丝点击