Holas
soy nuevo en el foro. me llamo limbert y soy de latino.
estudio en la universidad.
estoy aprendiendo ensamblador.
con nasm + gcc + minGW
asi que estaba de maravilla , hasta que me toco un problema duro.
ya busque en el foro , y no encontre nada. en goolgle peor :(
ahora os presento algo simple.
mi problema : es que introduzca una cadena que incluya espacios.
ingreso : "hola mundo"
pero el _scanf solo me captura "hola" hasta el espacio :(
ya intente con los distintos formatos. y no logre nada.
pero no funciona ningun formato.
os muestro mi ejemplo
;-------------------------------------...
extern _scanf, _printf, _gets
; introducir una cadena
segment .data
ms1 db "Introduzca una cadena (menor a 100 caracteres) = ", 0
frms db "%s",0
ms2 db "La cadena es : %s", 10,0
segment .bss
cad resb 10
segment .text
global _main
_main:
push ms1
call _printf
add esp, 4
push cad
push frms
call _scanf
add esp, 8
push cad
push ms2
call _printf
add esp, 8
ret
gracias por sus ayudas.
No has encontrado nada porque no as buscado >:D
simplemente poniendo en google "scanf espacios" salen muchisimos post, como por ejemplo este:
http://www.elrincondelc.com/nuevorincon/foros/viewtopic.php?p=57231&sid=ff5abcaeb21a3fab4e3f7ebd442fc139
:silbar:
Cita de: limbertx en 24 Febrero 2013, 18:09 PM
y soy de latino.
Y cuál es ese país? ;D
PS: Bienvenido al foro. ;)
Hola
También puedes utilizar la syscall read.
Un saludo.