1798927139 发表于 2015-1-29 18:03:29

哪位大神能指点指点呀

在这里写的怎么判断两个字符串是否相同呀,我用了C语言的strcmp()是否等于0,但是为什么只要第一个字母相同就能进去if判断里呀???比如这样的
TCHAR Name = {TEXT("745759231")};
TCHAR szBuffer;
其中 hwndedit是单行文本框句柄。

GetWindowText(hwndedit, szBuffer, 20);
if(strcmp(szBuffer, szName) == 0)
{
MessageBox(NULL, TEXT("测试"),TEXT(“测试”),MB_OK);
}
只要第一个不是7就进不去,只要是第一个是7不管后面是

1798927139 发表于 2015-1-29 19:40:04

没人给回答吗???:sad

百日维新 发表于 2015-1-30 15:08:52

支持

百日维新 发表于 2015-1-30 15:09:43

晚上看看!

!@R键! 发表于 2015-2-2 20:16:17

还在学

506076894 发表于 2015-2-2 22:18:09

本帖最后由 506076894 于 2015-2-2 22:22 编辑

我用的是VS2012+WIN7环境
估计你用的是VC6?
      TCHARName    = L"74";
      TCHARszBuffer = L"75";
      if(wcscmp(szBuffer,Name) == 0)
      {
                MessageBox(NULL, TEXT("相等"),TEXT("相等"),MB_OK);
      }
stcmp原型用于比较const char*
我猜测第一个是7可能是因为只比较了前面的7,7后面的就忽略了。(指针)
tchar实际是wchar(宽字符),比较函数用wcscmp();
你写的代码除去语法错误,stcmp(tchar,tchar)在我的环境中无法编译,估计被微软更新掉了。

xiangh105 发表于 2015-2-3 23:44:50

TCHAR通用类型的用_tcscmp比较

1798927139 发表于 2015-2-4 18:14:28

506076894 发表于 2015-2-2 22:18
我用的是VS2012+WIN7环境
估计你用的是VC6?
      TCHARName    = L"74";


非常感谢呵呵。

1798927139 发表于 2015-2-4 18:15:03

xiangh105 发表于 2015-2-3 23:44
TCHAR通用类型的用_tcscmp比较

恩恩,非常感谢

tiandiweicheng1 发表于 2015-7-5 12:18:08

第一个是7可能是因为只比较了前面的7,7后面的就忽略了。(指针)
tchar实际是wchar(宽字符),比较函数用wcscmp();

哥哥123 发表于 2015-7-15 22:48:16

刷鱼币 只问下载

爱你一辈子 发表于 2015-7-17 20:28:16

刷点鱼币 只为下载 路过
页: [1]
查看完整版本: 哪位大神能指点指点呀