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

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Copiar caracteres en: 5 Octubre 2017, 01:04 am
Hola buenas, escribo para una duda que me ha surgido.

Si yo por ejemplo tengo los siguiente:

char *ptr[100];

char s1 [100] ="hola";


Y quiero copiar s1[0] en ptr[0],, ¿hay alguna forma de hacerlo?

Ya probé con strcpy y  strncpy y no me funciona.

Gracias de antemano.
2  Programación / Programación C/C++ / Buscar Palabra en una lista en: 14 Enero 2017, 21:27 pm
Hola buenas, estoy haciendo una función que busca autores en una lista. Tengo la función que adjunto abajo, y no ese como comparar cada elemento de la lista con autor. Si alguien puede echarme una mano se lo agradeceria. Muchas gracias.



Código
  1. int BuscarAutor(LISTA *l, char *autor)
  2. {
  3.    NODO *aux=lista->primero;
  4.  
  5.    int i=0;
  6.  
  7.    int cuenta=0;
  8.  
  9.    if(aux==NULL)
  10.    {
  11.  
  12.        return NULL;
  13.    }
  14.    else
  15.    {
  16.  
  17.  
  18.        do {
  19.  
  20.            if(strcmp(aux,autor)==0)
  21.            {
  22.                cuenta++;
  23.  
  24.            }
  25.  
  26.  
  27.            aux=aux->siguiente;
  28.  
  29.  
  30.        }while(aux!=NULL);
  31.  
  32.        printf("Numero: %i\n",cuenta);
  33.        return NULL;
  34.  
  35.    }
  36.  
  37. }
  38.  
  39.  
3  Programación / Programación C/C++ / Quitar espacios de un cadena de caracteres en: 11 Enero 2017, 21:28 pm
Hola buenas , he creado una función que elimina espacios de una cadena, pero tengo algunas dudas a la hora de terminarla, ya que con esto no me los junta. Si alguien puede echarme una mano.. Gracias!!

Código
  1. void trim (char *cadena)
  2. {
  3.    int ini, fin;
  4.    fin=strlen(cadena)-1;
  5.    while(fin >0 && (cadena[fin]==' ' || cadena[fin]=='\t' || cadena[fin]=='\n' || cadena[fin]=='\r'))
  6.        fin--;
  7.    fin++;
  8.    cadena[fin]='\0';
  9.  
  10.    ini=0;
  11.    while(ini<fin && (cadena[ini]==' ' || cadena[ini]=='\t' || cadena[ini]=='\n' || cadena[ini]=='\r'))
  12.        ini--;
  13.  
  14.  



Los espacios son los del principio y el final solamente.
4  Programación / Programación C/C++ / Pequeña duda en: 9 Enero 2017, 17:24 pm
Hola, os escribo por un pequeña duda que me ha surgido.
No entiendo los puntos en esta línea de código:
  double b[N] = {1., 1., 1., 1.};

Gracias de antemano y saludos.
5  Programación / Programación C/C++ / Viajante comercio en: 5 Septiembre 2016, 18:26 pm
Lo esencial del problema. Segun la matriz que he introducido, deberia calcular el minimo de la primera fila, excluyendo siempre el cero, seleccionar el 0,2 que es el minimo y borrar las columnas de ambos numeros. Luego iria a la fila 2, buscaria el minimo que esta en el 2,3 y borraria de nuevo columnas. El problema es que a partir de ahi no avanza y entra en bucle cuando deberia seguir con 3,1 y acabar.


Código
  1. int matriz[n][n];
  2. int minimo;
  3. list <int> vertice;//Subconjunto solución
  4.  
  5. /*--------------------------------------------------*/
  6. // Rellenamos matriz a ceros
  7.  
  8. for(int i=0; i<n; i++){
  9.    for(int j=0; j<n; j++){
  10.              matriz[i][j] = 0;
  11.    }
  12. }
  13.  
  14. matriz[0][1]=5;
  15. matriz[0][2]=2;
  16. matriz[0][3]=3;
  17. matriz[1][0]=5;
  18. matriz[1][2]=4;
  19. matriz[1][3]=5;
  20. matriz[2][0]=2;
  21. matriz[2][1]=4;
  22. matriz[2][3]=1;
  23. matriz[3][0]=3;
  24. matriz[3][1]=5;
  25. matriz[3][2]=1;
  26.  
  27. bool aumento;
  28. int contador;
  29. int contador2;
  30. int val1,val2;
  31.  
  32. for(int i=0; i<n; i=val2){
  33.    aumento = true;
  34.    contador2 = 0;
  35.    for(int j=0; j<n; j++){
  36.  
  37.        if (aumento){
  38.            contador = 0;
  39.  
  40.            while (matriz[i][contador]==0){
  41.                contador++;
  42.            }
  43.  
  44.            minimo = matriz[i][contador];
  45.            //cout << "\nMINIMO INICIAL EN FILA " << i << " : " << minimo << endl;
  46.            aumento = false;
  47.        }
  48.  
  49.        contador2++;
  50.        if(matriz[i][j]!=0){
  51.            if(matriz[i][j] < minimo){
  52.                minimo = matriz[i][j];
  53.                val1 = i;
  54.                val2 = j;
  55.                //cout << "MINIMO DE LA FILA " << i << ": " << minimo << endl;
  56.                cout << "POSICION " << "("<<val1<<","<<val2<<")"<<endl;
  57.  
  58.            }
  59.        }
  60.        //cout << "CONTADOR2 : " << contador2 << endl;
  61.  
  62.        if (contador2 == n){
  63.  
  64.            vertice.push_back(val1);
  65.                vertice.push_back(val2);
  66.  
  67.             for(int j=0; j<n; j++){
  68.  
  69.                          matriz[j][val1]=0;
  70.                          matriz[j][val2]=0;
  71.            }
  72.  
  73.            // cout << "POSICION " << "("<<val1<<","<<val2<<")"<<endl;
  74.        }
  75.    }
  76. }

MOD EDIT: Etiquetas GeSHi.
6  Programación / Programación C/C++ / funcion reconocer emails en: 5 Septiembre 2016, 10:43 am
Hola buenas,
tengo que hacer una funcion que reconozca emails , he sacado esto.
Si alguien me puede ayudar, se lo agradeceria



int emails(char *email)   
{
    int i;
   
    if (email==NULL)
        return 0;
   
    for (i=0; i<email ; i++)
    {
        if(email[0]== '@' || email[0]== '.')
            return 0;
           
        if(email!='@')
            return 0;
       
    }
    return 1;
}
7  Programación / Programación C/C++ / Ayuda con formato de hora en: 4 Septiembre 2016, 21:49 pm
Hola buenas, estoy haciendo una función para que me reconozaca el formato de las horas en hh:mm pero cuando se trata de un formato asi no me retorna 1 y no se por que.
int hora(char *ho)
{   
    int h=0, m=0, i;
   
    if (ho==NULL)
        return 0;
         
    if (strlen(ho)!=5)
        return 0;
       
    for (i=0; i<5 ; i++)
    {
       
        if (i==2)
        {
            if (ho!=':')
           
                return 0;
        }
        else
        {
            if (ho<'0' || ho>'5')
             
                return 0;
        }
    }
   
    h = (ho[0]-'0')*10 + (ho[1]-'0');
    m = (ho[3]-'0')*10 + (ho[4]-'0');
 
   
   

    if (h<0 || h>23)
        return 0;
       
    if(m<0 || m>59)
        return 0;
       
 
    return 1;

}
8  Programación / Programación C/C++ / qsort en: 26 Agosto 2016, 18:32 pm
Hola, podrías ayudarme con esto. No entiendo que hace qsort.

Código
  1. void Combinacion(int *combinacion) //combinación es un vector
  2. {
  3. int i=0;
  4. int j=0; //Inicializamos los iteradores
  5. int num_aleatorio=0; //Variable donde guardamos el número aleatorio
  6. bool correcto=true; //Variable booleana para comprobar si num_aleatorio está repetido en el vector combinacion
  7.  
  8. srand (getpid()); //Utilizamos srand() y no rand() porque éste último si ejecutamos varias veces nuestro
  9. //programa, la secuencia de números aleatorios se repite. Y utilizamos getpid() para que
  10. //con cada nuevo proceso se cree una secuencia de números distinta.
  11.  
  12. //Asignamos 0 a todas las posiciones del vector combinacion para no generar números basura
  13. for(i=0; i < Total_num_apuesta; i++)
  14. {
  15. combinacion[i] = 0;
  16. }
  17.  
  18. i=0; //Volvemos a inicializar la variable a 0
  19.  
  20. while(i < Total_num_apuesta) //Repetimos el bucle hasta conseguir 6 números aleatorios no repetidos
  21. {
  22. num_aleatorio = rand()%(Total_num_jugar+1); //Generamos número aleatorio del 1 al 15
  23.  
  24. j=0;
  25. correcto=true; //Volvemos a inicializar las variables
  26.  
  27. while(j < Total_num_apuesta && correcto==true)
  28. {
  29. if(combinacion[j] != num_aleatorio)
  30. {
  31. correcto=true;
  32. }
  33. else
  34. {
  35. correcto=false;
  36. }
  37. j++;
  38. }
  39.  
  40. if(correcto == true)
  41. {
  42. combinacion[i] = num_aleatorio;
  43. i++;
  44. }
  45. }
  46.  
  47. qsort(combinacion, Total_num_apuesta, sizeof(int), &comparar);
  48. }
  49.  

MOD EDIT: Agregadas etiquetas GeSHi.
9  Sistemas Operativos / GNU/Linux / Como dar permisos a una carpeta en: 22 Agosto 2016, 19:20 pm
Hola buenas, tengo un problema con linux, intento ejecutar lo que hay dentro de una carpeta y no puedo. ¿Como puedo dar permiso con chmod a una carpeta y todo lo que hay dentro de ella?


Gracias 
10  Programación / Programación C/C++ / Problemas para abrir ficherosHola buenas, estoy empezando a tocar c++ y no puedo en: 1 Agosto 2016, 19:43 pm
Hola buenas, estoy empezando a tocar c++ y no puedo abrir un fichero introduciendo yo el nombre del fichero por teclado. Tengo esto y no me funciona:

    char nomFichero[20];
    FILE *fich;

    cin>>nomFichero;
    fich=fopen(nomFichero,"r");
   
    if(fich==NULL)
    {
        cout<<"No existe"<<endl;
       
    }
Si alguien me puede echra una mano se lo agradeceria.
Gracias de antemano y un saludo.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines