小不啷豆 2019-03-21 14:20 采纳率: 33.3%
浏览 772
已采纳

LPCWSTR 、LPCSTR 、 BYTE * 三种返回值对函数的区别?

有一个接口,功能一致,就是返回值类型不同,请问这几种返回值类型接口的处理方式有什么区别?比如是UNICODE函数还是ASCII函数?
LPCSTR A()
{
m_localFileData = new char[ fLength * sizeof(char) + 1 ];
memset( m_localFileData , 0 , fLength * sizeof(char) + 1 );
}

LPCWSTR A()
{
m_localFileDataW = new WCHAR[ fLength * sizeof(WCHAR) + 1 ];
char* temp = NULL;
temp = new char[fLength * sizeof(char) + 1];
memset( m_localFileDataW , 0 , fLength * sizeof(WCHAR) + 1 );
MultiByteToWideChar( CP_ACP , 0 , temp , strlen(temp) , m_localFile DataW , sizeof(m_localFileDataW) );
}

BYTE * A()
{
m_localFileDataB = new BYTE[ fLength * sizeof(BYTE) ];
memset( m_localFileDataB , 0 , fLength * sizeof(BYTE) );
}

  • 写回答

1条回答

  • 窝米逗佛~ 2019-03-21 15:28
    关注

    函数的重载嘛,是为了适应调用者的各种需要,简化调用者的操作;
    要解释清楚是些什么函数 就有点麻烦了 看下这个吧
    https://www.cnblogs.com/maowang1991/p/3571483.html
    https://baike.baidu.com/item/LPCSTR/4537603?fr=aladdin
    跟具体的编译环境还有些关系的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作