在VS里面写如下代码,实现两个数的相加并且显示结果:

    int num1,num2,num3;
char ch1[10],ch2[10],ch3[10];
GetDlgItem(IDC_EDIT1)->GetWindowText(ch1,10);
GetDlgItem(IDC_EDIT2)->GetWindowText(ch2,10);
num1=atoi(ch1);
num2=atoi(ch2);
num3=num1+num2;
itoa(num3,ch3,10);
GetDlgItem(IDC_EDIT3)->SetWindowText(ch3);

编译运行出现错误:

1>.\TestDlg.cpp(42) : error C2664: “int CWnd::GetWindowTextW(LPTSTR,int) const”: 不能将参数 1 从“char [10]”转换为“LPTSTR”
1>        与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
1>.\TestDlg.cpp(43) : error C2664: “int CWnd::GetWindowTextW(LPTSTR,int) const”: 不能将参数 1 从“char [10]”转换为“LPTSTR”
1>        与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换
1>.\TestDlg.cpp(53) : error C2664: “CWnd::SetWindowTextW”: 不能将参数 1 从“char [10]”转换为“LPCTSTR”
1>        与指向的类型无关;转换要求 reinterpret_cast、C 样式转换或函数样式转换

原因是字符集的问题。VS2008和VC6.0还是有些不一样的。

参考资料:http://topic.csdn.net/u/20090506/17/d7e4b312-ba8a-4611-b94b-59c5c7a96aea.html

解决方案:

char 改成TCHAR
atoi 改成 _ttoi
itoa 改成 _itot

         TCHAR ch1[10],ch2[10],ch3[10];
GetDlgItem(IDC_EDIT1)->GetWindowText((ch1),10);
GetDlgItem(IDC_EDIT2)->GetWindowText((ch2),10);
num1=_ttoi(ch1);
num2=_ttoi(ch2);
num3=num1+num2;
_itot(num3,ch3,10);
GetDlgItem(IDC_EDIT3)->SetWindowText(ch3);

VC++ (VS2008)里面char和LPTSTR的转换问题相关推荐

  1. VC++中的char,wchar_t,TCHAR(转载)

    VC++中的char,wchar_t,TCHAR 大家一起做一个项目,经常发现有的人爱用strcpy等标准ANSI函数,有的人爱用_tXXXX函数,这个问题曾经搞的很混乱.为了统一,有必要把来龙去脉搞 ...

  2. CString与string、char*的区别和转换

    我们在C++的开发中经常会碰到string.char*以及CString,这三种都表示字符串类型,有很多相似又不同的地方,常常让人混淆.下面详细介绍这三者的区别.联系和转换: 各自的区别 char*: ...

  3. VC.NET字符指针与String的转换

    VC.NET字符指针与String的转换 String ^s;              char*ch="wqj";               s=gcnew String(c ...

  4. char与wchar_t的转换

    来源于:http://www.cppblog.com/lf426/ wchar_t是C/C++的字符数据类型,是一种扩展的字符存储方式,wchar_t类型主要用在国际化程序的实现中,但它不等同于uni ...

  5. char[],char *,string之间转换

    char []与char *之间转换 char []转char *:直接进行赋值即可 // char[] 转char * char str[] = "lala"; char *st ...

  6. 转:char*, char[] ,CString, string的转换

    转:char*, char[] ,CString, string的转换 (一) 概述 string和CString均是字符串模板类,string为标准模板类(STL)定义的字符串类,已经纳入C++标准 ...

  7. C++ 中 char[],char *,string之间转换

    char []与char *之间转换 char []转char *:直接进行赋值即可 // char[] 转char * char str[] = "lala"; char *st ...

  8. 如何把char类型的数字字符转换成int类型

    近来面试遇到一个问题,通过控制台输入一个12位的数字,然后进行一些计算,然后被困在如何把char类型的数字转换成int类型.通过搜索,找到两个解决办法. 1.把char型转换成int类型 for(in ...

  9. java char与int互相转换

    java char与int互相转换 (1)int转char,将数字加一个'0',并强制类型转换为char. (2)char转int,将字符减一个'0'即可. public static void ma ...

最新文章

  1. 面试常考:bitmap判断其中是否有相同元素
  2. ethtool用法 linux_Linux命令之Ethtool用法详解
  3. 小白Linux下安装mysql
  4. 通过图片 找到桌面相同图片区域坐标_非常萌的桌面工具-bongo cat mver0.1.6
  5. 系统架构设计师-软件水平考试(高级)-理论-项目管理
  6. Vue2学习笔记:计算属性(computed)
  7. 并发编程学习之生产者消费者模式 - 使用Condition实现
  8. FoxMail7.2信纸设置(适用于7.0及以上版本)
  9. PCB负片(PCB Negative)
  10. JavaScript推箱子游戏开发笔记
  11. 怎么从安卓设备转移数据到苹果_如何将数据从安卓设备转移到iPhone12
  12. [歪谈]拽一个贵人出来给你当炮架子
  13. 用pandas读写HDF5文件
  14. CLR的主要作用有哪些
  15. 见或不见 →仓央嘉措
  16. 【运筹学】对偶理论 : 对偶性质 ( 对称性质 | 对称性质推导 )
  17. 研究16位汇编NEG求补指令
  18. 防止Web攻击,做好HTTP安全标头
  19. 2023开学季哪款电容笔值得买?高品质电容笔品牌推荐
  20. 手把手教你python实现量价形态选股知乎_怎样通过量价形态选股?量价选股技巧...

热门文章

  1. 剖析Caffe源码之Layer_factory
  2. 离线或在线加载pytorch、mmdetection预训练模型vgg、resnet、alexnet等
  3. tf.group()用于组合多个操作
  4. 主构造器和附属构造器
  5. 面向对象:类的定义和使用
  6. c语言字母金字塔代码,打印字母金字塔,昨晚看到某个帖子的题目
  7. arp 不同网段 相同vlan_同vlan不同网段能否ping通?
  8. iCMS v8.0.0多终端内容管理系统
  9. 孜然网址导航系统源码v1.0
  10. kibana创建es索引_java操作es动态创建索引(按月生成),索引类型,索引别名