elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17
101  Programación / Programación C/C++ / Re: [C] ¿Qué hace este while de una sola linea? en: 25 Noviembre 2015, 05:45 am
Bueno, sí entendí mejor por lo menos la idea.

Ahora si yo quisiera por ejemplo escribir esto pero sin un while ¿Cómo lo haría?

Código
  1. while ((buffer[0] = c = getchar()) == ' ' || c == '\t' || c=='\n');

O sea yo en realidad todavía no entiendo que hace ese while cuando se cumple la condición y si no se cumple.

 :-\

Saludos!
102  Programación / Programación C/C++ / Re: [C] ¿Qué hace este while de una sola linea? en: 25 Noviembre 2015, 04:34 am
Me parece muy confusa tu forma de explicar.

Todavía no lo entiendo bien, o sea yo creía que solo cuando se daba la igualdad no se hacía la asignación algo así

¿Podrías explicarmelo de nuevo, con otras palabras?

Saludos!
103  Programación / Programación C/C++ / [C] ¿Qué hace este while de una sola linea? en: 25 Noviembre 2015, 01:31 am
Código
  1. #include <stdio.h>
  2.  
  3. int main (void){
  4.  
  5.  int a,c;
  6.  a=c=3;
  7.  
  8.  while ((a=c=getchar()) == '1');
  9.  
  10.  printf ("c:%c\n",c);
  11.  printf ("a:%c\n",a);
  12.  
  13.  return 0;
  14. }


Código:
[dresuer@emachine TRABAJILLO]$ echo '3' | ./TEST
c:3
a:3
[dresuer@emachine TRABAJILLO]$ echo '1' | ./TEST
c:

a:

[dresuer@emachine TRABAJILLO]$

¿Qué hace este programa?

¿Por qué a y c valen una nueva linea?

¿a=c='\n'?

No entiendo.
104  Programación / Programación C/C++ / Re: [C] Memoria dinámica. Malloc, Realloc en: 19 Noviembre 2015, 01:44 am
Código
  1. /*
  2. Escribir un programa que lea enteros y los almacene en un arreglo
  3. sin conocer de antemano la cantidad de valores que se leerán.
  4. El programa deberá completar el arreglo hasta que se ingrese un número negativo,
  5. valor que no se agregará a la mencionada estructura de datos. Finalmente deberá imprimir
  6. el promedio de los elementos del arreglo.
  7. */
  8.  
  9. #include <stdio.h>
  10. #include <stdlib.h>
  11.  
  12.  
  13. int main (void){
  14. int promedio;
  15. int i;
  16. int *AR=malloc(1*sizeof(int));
  17. int *AR_tmp;
  18.  
  19. i=promedio=0;
  20.  
  21.  
  22. printf ("Introduce un numero positivo: \n");
  23. scanf ("%d",&AR[i]);
  24.  
  25.  
  26. while (AR[i]>=0){
  27. promedio+=AR[i];
  28. i++;
  29. AR_tmp = realloc(AR, (1+i) * sizeof(int));
  30. if (AR_tmp==NULL){free(AR_tmp); exit(1);}
  31.  
  32. AR=AR_tmp;
  33. // Ya no lo necesitamos.
  34. AR_tmp=NULL;
  35. scanf ("%d",&AR[i]);
  36. printf ("Tamaño de a: %lu\n",sizeof(AR));
  37. }
  38. printf ("Promedio: %f\n",(double)promedio/(i));
  39.  
  40. free(AR);
  41.  
  42.  
  43. return 0;
  44. }

Listo!
105  Programación / Programación C/C++ / [C] Memoria dinámica. Malloc, Realloc en: 19 Noviembre 2015, 00:47 am
Hola a todos!

Me tira un error, en realidad no sé bien como usar realloc.

Código
  1. /*
  2. Escribir un programa que lea enteros y los almacene en un arreglo
  3. sin conocer de antemano la cantidad de valores que se leerán.
  4. El programa deberá completar el arreglo hasta que se ingrese un número negativo,
  5. valor que no se agregará a la mencionada estructura de datos. Finalmente deberá imprimir
  6. el promedio de los elementos del arreglo.
  7. */
  8.  
  9. #include <stdio.h>
  10. #include <stdlib.h>
  11.  
  12.  
  13. int main (void){
  14. int a,promedio;
  15. int i;
  16. int *AR=malloc (1*sizeof(int));
  17. int *tmp_AR;
  18.  
  19. i=promedio=0;
  20. printf ("Number no negative: \n");
  21. scanf ("%d",&AR[i]);
  22. while (AR[i]>=0) {
  23. promedio+=AR[i];
  24. scanf ("%d",&AR[i]);
  25.  
  26. tmp_AR=realloc(AR,(1+i)*sizeof(int));
  27. if (tmp_AR == NULL){
  28. // Falló la asignación de memoria.
  29. exit (-1);
  30. }
  31. else {  
  32. // Asignar memoria a AR
  33. AR=tmp_AR;
  34. }
  35. i++;
  36. }
  37.  
  38. printf ("Average: %f\n",(double)promedio);
  39.  
  40.  
  41.  
  42.  
  43. return 0;
  44. }

Me tira este error : Error in `./12': realloc(): invalid next size: 0x0000000001a63010 ***

Y encima después me acepta numeros negativos no entiendo por qué

¿Cómo lo debería hacer?
Saludos!
106  Programación / Programación C/C++ / [C] Estructuras en: 18 Noviembre 2015, 22:21 pm
Buenas!  ;D

Código
  1. /*Escribir un programa que defina el tipo Persona, con nombre, edad y nacionalidad; solicite al
  2. usuario el ingreso de los datos de 8 personas y los guarde en un arreglo con elementos de tipo Persona,
  3.  para finalmente extraer del arreglo los datos de la persona más joven e imprimirlos en pantalla.
  4. Sugerencia: para probar el programa rápidamente se pueden guardar datos de personas
  5. en un archivo de texto y redirigir el contenido del mismo, usando la consola de Linux, al binario del programa.*/

¿Alguien me ayuda con esto por lo menos me guia un poco?
No digo que lo hagan todo.

Hice tantos ejercicios que llegué a este y me trabé, ya estoy algo cansado.
Apreciaría mucho que mas o menos me den una idea o como debería pensarlo.

Saludos.
107  Programación / Programación C/C++ / Re: [C] (void*) ¿Para qué sirve? en: 18 Noviembre 2015, 22:14 pm
Entendido, muchas gracias.
108  Programación / Programación C/C++ / Re: [C] (void*) ¿Para qué sirve? en: 18 Noviembre 2015, 16:01 pm
Si eso si lo sé, a eso no me refiero, me refiero al (void*) que está adentro printf, no como está definida la función.

¿O entendí mal?
109  Programación / Programación C/C++ / [C] (void*) ¿Para qué sirve? en: 18 Noviembre 2015, 15:55 pm
Hola a todos!, ¿para que sirve usar (void*) ahí?

Código
  1. #include <stdio.h>
  2.  
  3. void imprimir_dir(int x) {
  4.  
  5. printf("La direccion de memoria de a es: %p.\n", (void*) &x);
  6. }
  7.  
  8. int main(void) {
  9. int n;
  10.  
  11. printf("Introduzca un valor entero: ");
  12. scanf("%d", &n);
  13.  
  14. printf("La direccion de memoria de a es: %p.\n", (void*) &n);
  15.  
  16. imprimir_dir(n);
  17. return 0;
  18. }
  19.  

¿Qué pasa si yo hago esto?

Código
  1. /*
  2. Definir una simple función imprimir_dir(int x) cuyo único propósito sea imprimir la dirección del entero
  3. x que se le pasa. Crear una variable entera en main, imprimir su dirección ahí mismo y
  4. luego pasar la variable a imprimir_dir. Comparar los resultados. ¿Es el comportamiento esperado?
  5. */
  6.  
  7. #include <stdio.h>
  8.  
  9. void imprimir_dir(int x){
  10.  
  11. printf ("%p\n",&x);
  12.  
  13. }
  14.  
  15. int main (void){
  16. int a;
  17. a=20;
  18. printf ("%p\n",&a);
  19.  
  20. imprimir_dir(a);
  21.  
  22. return 0;
  23. }


Lo que se me pide es: Definir una simple función imprimir_dir(int x) cuyo único propósito sea imprimir la dirección del entero x que se le pasa. Crear una variable entera en main, imprimir su dirección ahí mismo y luego pasar la variable a imprimir_dir. Comparar los resultados. ¿Es el comportamiento esperado?

Saludos!
110  Seguridad Informática / Hacking / [How] Bypassing chrome XSS protection en: 18 Octubre 2015, 16:16 pm
Hola a todos,

cómo dice el título como puedo saltearme filtros anti-xss de Chrome?, busqué información en internet pero no la entendí del todo, ¿alguien me lo podría dejar más claro y si puede ser darme un ejemplo?

Saludos!
Páginas: 1 2 3 4 5 6 7 8 9 10 [11] 12 13 14 15 16 17
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines