if ((wParam = (WPARAM) CharUpper ((TCHAR *) wParam)) == VK_RETURN)首先(TCHAR *) wParam里的wParam是子窗口ID(被赋予ASCII码的十进制100,也就是d)那么这里的强制转换类型(TCHAR *) 是否就把100 变成'd'?然后用CharUpper 函数把d转化为大写的D,然后再用 (WPARAM)强制类型转换把大写D 再换成相应的ASCII码68? 然后再把68赋给wParam 然后再做VK_RETURN的对比?还有种情况,比如CharUpper ()里放入的是个'=' 号呢? 或者是回车呢? 那么这个转换会如何?
2 回答
ITMISS
TA贡献1871条经验 获得超8个赞
我给你测试了一下 #include #include using namespace std; int main() { char testChar='a'; LPTSTR s=CharUpper((TCHAR *)testChar); char b=(WPARAM)s; cout<<b; system("pause"); return 0; } 输出A;当testChar是‘=’时,输出还是‘=’ 经测试发现只有当时小写字母时,输出才是大写字母,其他的字符不会发生变化
- 2 回答
- 0 关注
- 89 浏览
添加回答
举报
0/150
提交
取消