• Viernes 8 de Noviembre de 2024, 13:27

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - y0mism0

Páginas: [1]
1
C/C++ / Varias Preguntas
« en: Domingo 11 de Febrero de 2007, 22:27 »
1. Cuando tu abres un fichero para entrada y salida ("r+"), y, despues de leer del fichero, por ej, haciendo un "fscanf(FILE *f....) ",   tienes que utilizar la funcion fflush, antes de escribir en el mismo fichero, por ej, haciendo un "fprintf(FILE *f...) ???

2. Es lomismo, para acceder a una estructura, poner " p->campo" que poner " (*p).campo?? y sin parentesis "*p.campo"?

3. Para que se utiliza la barra inclinada y el guion en estas sentencias?? "t[0].campo/t[0].campo2"   y   "t[0].campo-t[0].campo3"


4. Porque esta sentencia es incorrecta "reg3.reg2.reg1-->(*pa)" y esta otra no
" *(reg3.reg2.reg1-->pa)" ??


SAludos.

2
C/C++ / ¿que Falla Aqui?
« en: Lunes 27 de Noviembre de 2006, 08:23 »
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
typedef char *Pchar;
typedef char cadena[5];
Pchar devuelve(int);
void main()
{
      printf("%s",devuelve(1));

}

Pchar devuelve(int i)
{
   cadena cad;
   if (i==0)
      strcpy(cad," cero");
   else
      strcpy(cad," uno");
   return cad;
}

Me imprime un simbolo extraño en vez de uno o cero...

3
C/C++ / Varias Preguntas
« en: Domingo 26 de Noviembre de 2006, 04:29 »
HOla!

1. En primer lugar tengo una duda con los arrays. Porque no se puede poner esto
"int cad[]={1}" y si esto "int cad{1, 7}" ? (el primero es un vector y el segundo una matriz).
Cuando hay que asiganarle una cantidad de memoria fija a los arrays y cuando no hace falta, por ej cad[10]??? cuando puedes hacer esto "cad[]" o "cad[][]"??

2. porque no puedes hacer esto:?
#define MAX 5
typedef int a[MAX];
int a[MAX];
if(2<MAX)

Por ej, ninguna de estas 3 intrucciones me funciona, el compilador me dice que esta "missing..". No lo entiendo, si se supone q el preprocesador sustitye los el valor de MAX por 5 en todas las intrucciones.

Lo mismo, porque esto no me imprime 8?
#define HOLA 8
printf("HOLA");
porque esto si:
printf("%s",HOLA);

4. que quiere decir el compilador cuando te da un error de "Lvalue"?

Saludos.

4
C/C++ / Ayuda Con Funcion
« en: Jueves 23 de Noviembre de 2006, 21:11 »
PUede una funcion rerttornar dos valores?? POr ej, una funcion q intercambie dos numeros, como se haria??

ej:

......

introduzca a y b;
funcion intercambio(int a,int B)
{
tmp=a;
a=b;
b=tmp;
return a y b;
}

printf("ahora el numero %d y %d son %d y %d",a,b,intercambio(a,B));


Algo asi, Como podria retornar dos valores y q se imprima uno d ellos por el printf segun yo lo pida?

5
C/C++ / Ayuda Para Hacer Dos Programas
« en: Jueves 23 de Noviembre de 2006, 21:05 »
Necesito ayuda para hacer dos programas, alguna idea, indicacion de como hacerlo.

1 .

"Escriba un programa realice la siguiente operación:

1. generará un número aleatorio de cuatro cifras.
2. leerá desde la entrada estándar un número de cuatro cifras diferentes.
3. comparará el número leído con el número generado por la máquina
4. Mostrará en la pantalla un número que indicará cuántas cifras del número leído existen y están colocadas
en su posición correcta en el número generado, y cuántas cifras existen pero no están colocadas en su
posición correcta.
El programa repetirá los pasos 2 a 4 hasta que el número de cifras en posición correcta sea 4. Sea el siguiente
ejemplo de ejecución (para el número generado 5234)
Introduza su número: 2754
Cifras en su posición: 1
Cifras en otra posición: 2
Introduza su número: 1534
Cifras en su posición: 2
Cifras en otra posición: 1
..."

En este lo que se hacer es el apartado 4, comparar cifras y posiciones.



2.

"Realice un programa que lea de la entrada estándar un número de hasta 8 cifras y muestre por la salida estándar la
cifra resultante de aplicar el siguiente proceso:

a) Sumar el valor absoluto de todas las cifras del número.
B) Si el valor resultante tiene más de una cifra, volver a sumar todas sus cifras sucesivamente hasta obtener
un valor de una única cifra.
Ejemplos:
Valor introducido por el usuario: 68543210
68543210 -> 6+8+5+4+3+2+1+0 = 29
29 -> 2+9 = 11
11 -> 1+1 = 2
Valor a mostrar: 2
Valor introducido por el usuario: 10000
10000 -> 1+0+0+0+0 = 1
Valor a mostrar: 1
"

6
ASM (Ensamblador) / 2 Preguntas
« en: Miércoles 27 de Septiembre de 2006, 17:13 »
1.  Existe alguna funcion de la api para ocultar un proceso del administrador de tareas en windows?

2. Necesito una funcion, del tipo execv("prog.exe",argv); pero para windows. Ya se que esta funcion es de C, pero como en C ya mire y no vi ninguna que me pudiera servir, quisiera saber si hay alguna funcion de la api que valga para esto, es decir, que habra un programa, con los argumentos que le indiques en la funcion...

7
ASM (Ensamblador) / Ayuda En Asm ( 2 ) :)
« en: Miércoles 13 de Septiembre de 2006, 04:18 »
Bueno, hice lo q me dijiste Eternal Idol, y me baje el Masm32, y me lei un manual, pero tengo algunas dudas.

1.
Este codigo tan secillo me compila bien, pero sin embargo me da un error en timepo de ejecucion, la tipica ventanita de windows diciendo q aplicacion.exe a detectado un problema y debe cerrarse...
Código: Text
  1.  
  2. .386
  3. .model flat,stdcall
  4. option casemap:none
  5.  
  6. .data
  7. .code
  8. start:
  9. mov eax,04447h
  10. end start
  11.  
  12.  
A q se puede deber?

2.

Mira este code, funciona sin problema pero me gustaria interpretarlo al depurarlo (utilizo ollydbg).
Código: Text
  1.  
  2. .386
  3. .model flat,stdcall
  4. option casemap:none
  5. include &#092;masm32&#092;include&#092;windows.inc
  6. include &#092;masm32&#092;include&#092;kernel32.inc
  7. includelib &#092;masm32&#092;lib&#092;kernel32.lib
  8. include &#092;masm32&#092;include&#092;user32.inc
  9. includelib &#092;masm32&#092;lib&#092;user32.lib
  10.  
  11. .data
  12. MsgBoxCaption  db &#34;msgboX&#34;,0
  13. MsgBoxText       db &#34;¿hola, que tal?&#34;,0
  14.  
  15. .code
  16. start:
  17. invoke MessageBox, NULL, addr MsgBoxText, addr MsgBoxCaption, MB_OK
  18. invoke ExitProcess, NULL
  19. end start
  20.  

Esto es lo que me sale debugeando



Podrian explicarme lo que significa cada linea del debugeo para ver como trabaja un debug? A ver, las instrucciones mov, call etc, estiendo para que sirven , pero no como debugea el codigo el debugger. POr ej no entiendo para k pone push 0, o push 1.0040... ( no entiendo que es el putno ni los parametros), call <jmp..., y los dos Jmp del final, que no entiendo a que vienen...

3. Que funcion del SO tengo q utilizar para imprimir una cadema de caracteres por la linea de comandos, como si fuera el system("cadena"); del lenguaje C?

4. Y que funcion para almacenar una cadena de caracteres q escriba por el teclado?

Saludos.

8
ASM (Ensamblador) / Ayuda En Asm
« en: Jueves 7 de Septiembre de 2006, 01:33 »
1. TEngo un problemilla con un pekeño code en ASM. Esta compilado con el "Turbo Assembler  Version 2.01  Copyright © 1988, 1990 Borland International" (tasm).

POngo en codigo:
Código: Text
  1.  
  2. Código:
  3. pila segment stack 'stack'
  4. dw 150 dup (?)
  5. pila ends
  6. datos segment 'data'
  7. mensa db 'Esto es un ejemplo exe&#036;'
  8. datos ends
  9. codigo segment 'code'
  10. assume cs:codigo,ds:datos,ss:pila
  11. entrada proc
  12. mov ax,datos
  13. mov ds,ax
  14. lea dx,mensa
  15. mov ah,9
  16. int 21h
  17. mov ax,4c00h
  18. int 21h
  19. entrada endp
  20. codigo ends
  21. end entrada
  22.  
  23.  

El caso eske el programa funciona bien, pero cuando lo quiero debuggear con el olly, no puede leer el archivo, no se si tiene algo k ver con los bits, ya k el olly solo lee prgs de 32 bits.... k pasa, porke no puedo debuggearlo con el olly????

2. Otra pregunta k iva a acer, ya puestos, es, k significa k un programa sea de 32 bits? se k en los cpus son los buses de datos y en el SO tb, no? pero y en losa programas? eske lei k los com eran de 16 bits, y los exe de 32..

Saludos.

Páginas: [1]