一个简单程序的问题
程序是这样:输入10个数,存储在数组里,然后输出。
我写的程序:
INCLUDE Irvine32.inc
.data
IntegerCount=10
prompt1 BYTE "Enter a signed integer: ",0
str1 BYTE "Output integer: ",0
array DWORD IntegerCount DUP(?)
.code
main PROC
call InputInt
call OutputInt
call Waitmsg
exit
main ENDP
InputInt PROC
mov edx,OFFSET prompt1
mov ecx,IntegerCount
mov esi,OFFSET array
L1:call WriteString
call ReadInt
mov [esi],eax
add esi,4
loop L1
ret
InputInt ENDP
OutputInt PROC
mov ecx,IntegerCount
mov edx,OFFSET str1
mov esi,OFFSET array
call WriteString
L2:mov eax,[esi]
call WriteInt
add esi,4
loop L2
ret
OutputInt ENDP
END main
问题是最后输出的数中间都带有+号,如2+6+8...
请问怎样才能去掉这些加号?
[解决办法]
写一个过滤器子过程,或者直接改写输出例程。
[解决办法]
WriteInt 输出的是有符号数,或者你可以用WriteDec