Season2015 2015-12-07 13:45 采纳率: 0%
浏览 2234

在VC++2013版中使用itoa函数(被各种字符转换弄晕了)

void CTestDlg::OnClickedBtnAdd()
{
int num1, num2, num3;
char ch1[10], ch2[10], ch3[10];
GetDlgItem(IDC_EDIT1)->GetWindowText(_T("ch1"), 10);
GetDlgItem(IDC_EDIT1)->GetWindowText(_T("ch2"), 10);

num1 = atoi(ch1);
num2 = atoi(ch2);
num3 = num1 + num2;

_itoa_s(num3, ch3, 10);
GetDlgItem(IDC_EDIT3)->SetWindowText(_T("ch3"));

}
按照这个编辑,最后出现的Number3 中的值为2,但是显示的是ch3
图片说明
开始用 itoa(num3,_T( "ch3"), 10);
_就报错了error C2664: “char *itoa(int,char *,int)”: 无法将参数 2 从“const wchar_t [4]”转换为“char *”

我改变那个字符集,又会有新的其他错误出来。
哎,小白求解答,有没有推荐的文章将这些啥啥间的转换的,已经晕了

  • 写回答

2条回答 默认 最新

  • ysuwood 2015-12-07 16:04
    关注

    错误较多。建议你学习一下sscanf和ssprintf。
    更好用。

        int num1, num2, num3;
        char ch1[10]="1", ch2[10]="2", ch3[10];
        GetDlgItem(IDC_EDIT1)->GetWindowText(ch1);//修改
        GetDlgItem(IDC_EDIT1)->GetWindowText(ch2);//修改
        num1 = atoi(ch1);
        num2 = atoi(ch2);
        num3 = num1 + num2;
    
        _itoa_s(num3, ch3,10, 10);//修改,第三个参数是ch3的长度
        GetDlgItem(IDC_EDIT3)->SetWindowText(ch3);//修改
        printf("%s",ch3);
    
    评论

报告相同问题?

悬赏问题

  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥15 绘制多分类任务的roc曲线时只画出了一类的roc,其它的auc显示为nan
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?