当前位置: 代码迷 >> 汇编语言 >> 如何使程序认为编辑框中输入的是数字而不是文本呢
  详细解决方案

如何使程序认为编辑框中输入的是数字而不是文本呢

热度:9084   发布时间:2013-02-26 00:00:00.0
怎么使程序认为编辑框中输入的是数字而不是文本呢?
这时很久之前学习Win32下的汇编程序是碰到问题,搁置很久。

------解决方案--------------------------------------------------------
用窗口子类化,限制输入的字符。
如果是汇编写的的话,转换为为数字,WINDOWS里应该有函数能做到,自己写的话,就看看ASCII码表吧!
------解决方案--------------------------------------------------------
可以自己判断啊,字符ASCII码在30-39之间就是数字了,然后再用_atoi()(_宽字符wtoi())就可以转换为数值了。
------解决方案--------------------------------------------------------
_checknum proc buff:dword,b_size:dword
mov edx,buff
xor ecx,ecx
b_loop:
mov al,[edx+ecx]
cmp al, '0 '
jb over
cmp al, '9 '
jg over
cmp ecx,b_size
je ok_isnum
inc ecx
jmp b_loop
over:
xor eax,eax
ret
ok_isnum:
mov eax,1
ret
_checknum endp


上面是判断函数,是数字的话,返回1
随便写的代码,可能有些乱了。
如果是有负数,只要在开头判断是不是 '- '就可以了
  相关解决方案