+ -
当前位置:首页 → 问答吧 → 关于io.h,牛人帮忙解释下

关于io.h,牛人帮忙解释下

时间:2010-12-30

来源:互联网

从键盘输入一个变量的值,或者输出一个变量的值,或输出一个字符串,用input和output怎么写啊?
下边是别人写的,看不太明白,牛人帮忙解释下!!谢谢了,急啊。。。

.386
.MODEL FLAT
ExitProcess PROTO NEAR32 stdcall, dwExitCode:DWORD
INCLUDE io.h
cr equ 0dh
lf equ 0ah
.STACK 4096

.DATA
result byte 100 dup(?)
  byte cr,lf,0
temp_ebp dd 10 dup(?)
in_data byte 40 dup(?)


.code
_start:
push ebp
mov ebp,esp

push 0
push eax
input in_data,40 ;这个40是什么意思???
atod in_data ;atod是干什么的???
mov [ebp-4*1],eax
pop eax

push eax
mov eax,[ebp-4*1]
mov result+12,0 ;加12是什么意思?0又是什么意思??
dtoa result,eax ;dtoa什么意思??
output result

pop eax

mov esp,ebp
pop ebp
INVOKE ExitProcess,0
public _start
end

作者: zhengjs138   发布时间: 2010-12-30

Assembly code
; ... 照着名称和功能猜呗!
input in_data,40 ;这个40是什么意思???  40 应该是输入缓冲区的大小,即能容纳共 40 个字节
atod in_data ;atod是干什么的???  atod,将输入的字符串格式的数据转换为数值
mov [ebp-4*1],eax
pop eax

push eax
mov eax,[ebp-4*1]
mov result+12,0 ;加12是什么意思?0又是什么意思??  比较可能是置字符串结束的标记,这个应该不需要
dtoa result,eax ;dtoa什么意思??  dtoa,将数值转换我字符串显示格式
; ...

作者: zara   发布时间: 2010-12-30

C或C++的库函数?

貌似楼上解释了一些

LZ还想进一步了解的话,建议百度一下

atod和dtoa类似的函数记得是学C的时候了解过么?忘记了:)

作者: JustFromHell   发布时间: 2010-12-30