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

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


  Mostrar Mensajes
Páginas: 1 ... 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 [41] 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 ... 231
401  Programación / Programación C/C++ / Re: Ayuda con trozo codigo de "quiere continuar s/n".. en: 6 Diciembre 2018, 00:48 am
Tu problema principal es que todavia quedan datos en el buffer de entrada, te recomiendo que leas
¿Queda algo en el Buffer de Entrada stdin? (Solucionado)


Utiliza las etiqutas para codigo

Código
  1. entrar_opcion_si_no = 1;
  2. do{
  3. printf("Desea segir ingresando mas datos? (s/n)\n");
  4. fgets(temp,10,stdin);
  5. switch(tolower(temp[0])) {
  6. case 's':
  7. entrar_opcion_si_no = 0;
  8. printf("Selecciono SI\n");
  9. break;
  10. case 'n':
  11. entrar_opcion_si_no = 0;
  12. printf("Selecciono NO\n");
  13. entrar = 0; // Se cambia la variable para salir del menu principal
  14. break;
  15. default:
  16. printf("opcion incorrecta, solo 's' o 'n'\n");
  17. break;
  18. }
  19. }while(entrar_opcion_si_no == 1);
  20.  

Otra cosa, se que estas empezado, pero como recomendacion deja de utlizar funciones fancy ( funciones de adorno ) y concentrate en aprender las estrucutras basicas

Es decir quita todo esto:

Código:

printf("\n\n\n\n\n\t ANTES DE CONTINUAR .........");
printf("\n\n\n\n\n\t                   FAVOR MAXIMIZAR LA PANTALLA DE EJECUCION DE C .........\n\n\n\n");
printf("\n\n\n\n\n .............");
system("pause");
system("cls");

Y tambien deja de utilizar conio.h no es una libreria estandar


Me tome la molestia de re-escribir tu programa con varia modificaciones.

Código
  1. #include<stdio.h>
  2. #include<ctype.h>
  3. #include<string.h>
  4. #include<stdlib.h>
  5.  
  6. int main() {
  7. char frase[50], frase2[50];
  8. char temp[10];
  9. int entrar = 1;
  10. int  i=0,entrar_opcion_si_no;
  11. do {
  12. printf("PROGRAMA PIDE 2 FRASES, PRIMERO LAS COMPARA A VER SI SON IGUALES, LUEGO BUSCA LA SEGUNDA DENTRO DE LA PRIMERA Y POR ULTIMO NOS DICE CUAL ES MAYOR\n");
  13. printf("Ingrese frase 1 maximo 50 caracteres \n");
  14. fgets(frase,50,stdin);
  15. fseek(stdin, 0, SEEK_END);
  16. frase[strcspn(frase,"\n\r")] = '\0';
  17. printf("Ingrese frase 2 maximo 50 caracteres \n");
  18. fgets(frase2,50,stdin);
  19. fseek(stdin, 0, SEEK_END);
  20. frase2[strcspn(frase2,"\n\r")] = '\0';
  21.  
  22. printf("Primero vamos a compararlas si son iguales o no ...\n");
  23.  
  24. if (strcmp(frase,frase2)==0) {
  25. printf("La frase 1 \"%s\" es IGUAL a la frase 2 \"%s\"",frase, frase2);
  26. printf(" y la frase 2 esta dentro de la frase 1");
  27. }
  28. else {
  29. printf("La frase 1 \"%s\" es DIFERENTE a lab frase 2 \"%s\"\n",frase, frase2);
  30. if (strcmp (frase,frase2)>0)
  31. printf("La frase 1 es MAYOR que la frase 2\n");
  32. else
  33. printf("La frase 1 es MENOR que la frase 2 oooooo la frase2 MAYOR que la frase1.. como quieras vaso medio lleno vaso medio vacio jejeje\n");
  34. }
  35.  
  36. if (strstr(frase,frase2)==NULL)
  37. printf("La frase 2 NO esta incluida en la frase 1\n");
  38. else
  39. printf("La frase 2 SI esta incluida en la frase 1\n");  
  40.  
  41. entrar_opcion_si_no = 1;
  42. do{
  43. printf("Desea segir ingresando mas datos? (s/n)\n");
  44. fgets(temp,10,stdin);
  45. switch(tolower(temp[0])) {
  46. case 's':
  47. entrar_opcion_si_no = 0;
  48. printf("Selecciono SI\n");
  49. break;
  50. case 'n':
  51. entrar_opcion_si_no = 0;
  52. printf("Selecciono NO\n");
  53. entrar = 0; // Se cambia la variable para salir del menu principal
  54. break;
  55. default:
  56. printf("opcion incorrecta, solo 's' o 'n'\n");
  57. break;
  58. }
  59. fseek(stdin, 0, SEEK_END);
  60. }while(entrar_opcion_si_no == 1);
  61. }while(entrar);
  62. return 0;
  63. }
  64.  

Le quite la condición donde evalúas si son mayores a 50 de longitud, ya que con fgets limitas eso:
402  Programación / Programación C/C++ / Re: Problema entrada estándar en: 5 Diciembre 2018, 04:24 am

Interesante si funciono en Windows  ;-)

Código:
#include<stdio.h>
#include<unistd.h>

int main() {
if (!isatty(fileno(stdin))){
char temp[100];
fgets(temp,100,stdin);
printf("%s",temp);
}
}
403  Programación / Programación C/C++ / Re: Necesito ayuda con un generador de numeros al azar en: 5 Diciembre 2018, 04:14 am
hay que saber lo que se esta haciendo con el operador de modulo, solo devuelve el residuo de la division

Código
  1. rand() % 10

Solo genera números del 0 al 9 ya que son los residuos posibles al dividir cualquier numero entre 10

Código
  1. 1 + rand() % 10

Solo genera numeros del 1 al 10 ya que seria 1 + los numeros del 0 al 9, si haces la suma te dara numeros del 1 al 10

Por cierto tienes error en el printf

MAL
Código
  1. printf (contador, "%d%c",  rand() % 10, '\n');

deberia de ser

Código
  1. printf ("%d\n",  rand() % 10);

Por lo visto lo tratas de usar como si fuera cout, yes muy distinto el comportamiento

Saludos
404  Foros Generales / Noticias / Re: Secuestran más de 400.000 routers en todo el mundo para minar criptomonedas en: 5 Diciembre 2018, 02:38 am
Pero segun tengo entendido la factura de luz de los routers se va a pagar esten o no esten minando croiptos..

Asi que realmente no deberia de exister queja, lo malo es cuando usan los routers para realizar DDoS, ahi si no se puede hacer nada por que son perdidadas economicas.

Saludos!
405  Programación / Programación C/C++ / Re: Problema entrada estándar en: 5 Diciembre 2018, 00:22 am
Si presionas ^D (Control D) en linux o ^Z en windows, generas un eof para la entrada estandar.

Interesante, si es cierto que cuand quiero salir de una terminal linux rapidamente presiono control D y para windows no me sabia lo del control z.

Sin embargo el OP trata de automatizar alguna tarea, que cuando envie texto mediante Echo al programa, este lo capture y lo procese, y cuando envié alguna cadena vacia, no se quede esperando el programa.

Saludos!
406  Programación / Programación C/C++ / Re: Problema entrada estándar en: 4 Diciembre 2018, 23:41 pm
Ya entendi, lo que quieres es que si hay algo en la entrada estandar lo procese, si no, simplemente termine.

te convendría revisar el siguiente tema ¿Queda algo en el Buffer de Entrada stdin? (Solucionado)



Asi no se puede hacer lo que dices con metodos estadar (Segun creo no se puede).

El punto esta en que la mayoria de las funciones tipo getchar, getc, fgets etc......  se quedan esperando entrada hasta que lea algo.

Yo intenten validar si habia algo en la entrada estandar mediante el uso de feof, pero resulta que para Stdin nunca es el FIN del archivo, como lo muestro en una de las replies el link que te pase. sin embargo no se si funcione para el metodo que muestras de echo .... o type. Voy a probarlo y te comento.

Saludos
407  Programación / Programación C/C++ / Re: Compilar C/C++ en Windows en: 4 Diciembre 2018, 22:14 pm
Yo utilizo Notepad++ y de compilador el Gcc de mingw

http://www.mingw.org/

Saludos
408  Programación / Programación C/C++ / Re: cambiar de nombre a un proceso en: 4 Diciembre 2018, 20:11 pm
He leido que con un execl cambiando el argumento argv[0] por "hijo" debería de funcionar pero no me funciona.


Código
  1. int execl(const char *path, const char *arg, ...);

Código:
The const char *arg and subsequent ellipses in the execl(), execlp(), and execle() functions can be thought of as arg0, arg1, ..., argn.

Eso solo modifica los parametros que procesa el programa llamado mediante execl. normalemnte el argv[0] es el nombre del programa, pero eso solo cambia la forma en la que el programa se ve asi mismo, para el sistema operativo el proceso va seguir teniendo el nombre original.

Si quieres cambiar el nombre del proceso listado en el PS, tienes que "rootkitear" tu sistema operativo y controlar la forma en la que el PS actual afectandi directamente la informacion  que PS esta leyendo actualmente.


Saludos



409  Programación / Programación C/C++ / Re: Problema entrada estándar en: 4 Diciembre 2018, 19:16 pm
echo "123456" | ./programa

Eso es como si ejecutaras el programa y este pidera informacion
Código:
Ingrese el numero X:
Entonces lo que le pasaste como 123456 mediante el Echo se ingresa en esa primera pregunta ya sea un scanf o un fgets o un cin

Ejemplo:

Código
  1. #include<stdio.h> //Funciones printf, fgets
  2. #include<string.h> //Funciones printf, fgets
  3.  
  4.  
  5. int main() {
  6. char temp[100];
  7. do {
  8. printf("> ");
  9. fgets(temp,100,stdin);
  10. printf("Escribio : %s",temp);
  11. }while(strncmp(temp,"exit",4));
  12. }
  13.  

entrada.txt
Código:
hola
esto es una pruba
de codigo al salir con
exit



Saludos
410  Foros Generales / Noticias / Hackean Quora? en: 4 Diciembre 2018, 03:05 am
Dear ......

We are writing to let you know that we recently discovered that some user data was compromised as a result of unauthorized access to our systems by a malicious third party. We are very sorry for any concern or inconvenience this may cause. We are working rapidly to investigate the situation further and take the appropriate steps to prevent such incidents in the future.

What Happened

On Friday we discovered that some user data was compromised by a third party who gained unauthorized access to our systems. We're still investigating the precise causes and in addition to the work being conducted by our internal security teams, we have retained a leading digital forensics and security firm to assist us. We have also notified law enforcement officials.

While the investigation is still ongoing, we have already taken steps to contain the incident, and our efforts to protect our users and prevent this type of incident from happening in the future are our top priority as a company.

What information was involved

The following information of yours may have been compromised:

    Account and user information, e.g. name, email, IP, user ID, encrypted password, user account settings, personalization data

    Public actions and content including drafts, e.g. questions, answers, comments, blog posts, upvotes

    Data imported from linked networks when authorized by you, e.g. contacts, demographic information, interests, access tokens (now invalidated)

Questions and answers that were written anonymously are not affected by this breach as we do not store the identities of people who post anonymous content.

What we are doing

While our investigation continues, we're taking additional steps to improve our security:

    We’re in the process of notifying users whose data has been compromised.
    Out of an abundance of caution, we are logging out all Quora users who may have been affected, and, if they use a password as their authentication method, we are invalidating their passwords.
    We believe we’ve identified the root cause and taken steps to address the issue, although our investigation is ongoing and we’ll continue to make security improvements.

We will continue to work both internally and with our outside experts to gain a full understanding of what happened and take any further action as needed.

What you can do

We’ve included more detailed information about more specific questions you may have in our help center, which you can find here.

While the passwords were encrypted (hashed with a salt that varies for each user), it is generally a best practice not to reuse the same password across multiple services, and we recommend that people change their passwords if they are doing so.

Conclusion

It is our responsibility to make sure things like this don’t happen, and we failed to meet that responsibility. We recognize that in order to maintain user trust, we need to work very hard to make sure this does not happen again. There’s little hope of sharing and growing the world’s knowledge if those doing so cannot feel safe and secure, and cannot trust that their information will remain private. We are continuing to work very hard to remedy the situation, and we hope over time to prove that we are worthy of your trust.

The Quora Team
Páginas: 1 ... 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 [41] 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 ... 231
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines