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

 

 


Tema destacado: Estamos en la red social de Mastodon


  Mostrar Temas
Páginas: [1]
1  Programación / Programación C/C++ / Ayuda para dividir una frase con Strtok en: 23 Noviembre 2013, 19:29 pm
Buenas tardes gente! Tengo en mi codigo un algoritmo para guardar en 3 variables de tipo Cadena, las palabras de la frase divididas por un caracter espacio. Pero necesito diferenciar y hacer que en el tercer parametro me divida pero dejando de tomar en cuenta los espacios, por ejemplo, en este momento si yo ingreso:

Hola hola123 hola

el algoritmo me guarda
comando=Hola
parametro1=hola123
parametro2=hola

en cambio si le ingreso....

Hola hola123 hola aasdas asdasd

ya no me guarda nada y me da segmentation fault.

Yo necesito ingresar en parametro2 una cadena que puede contener espacios tambien.

Aca el codigo:

Código
  1.        fgets(frase,100,stdin); //frase es un arreglo de caracteres de tamaño 100.
  2.        segmento=strtok(frase, " "); //parametro1, comando y parametro2 son un typedef char* Cadena
  3.        contador=0;
  4.        while(segmento!=NULL){
  5.             if(contador == 0)
  6.                comando=segmento;   // GUARDA EL COMANDO.
  7.  
  8.             if(contador == 1)
  9.                parametro1=segmento;    // GUARDA EL PRIMER PARAMETRO.
  10.  
  11.             if(contador == 2)
  12.                parametro2=segmento;    // GUARDA EL SEGUNDO PARAMETRO.
  13.  
  14.             segmento=strtok(NULL," ");
  15.             contador++;
  16.    }

como puedo modificarlo para que haga lo que yo quiero?
2  Programación / Programación C/C++ / "Segmentation Fault" cuando igualo una lista a una estructura que contiene otra en: 21 Noviembre 2013, 20:37 pm
Buenas tardes comunidad. Tengo una consulta sobre un error tipo Segmentation fault que me tira el siguiente codigo cuando quiero igualar una lista creada, a una que está incluida en otra estructura. El código es el siguiente:

Funcion para crearArchivo en el directorio.

Código
  1. Archivo crearArchivoDirectorio(Directorio dir, Cadena nombre){
  2.    Archivo arch;
  3.    ListaArchivos archivoLista=new _listaArchivos;
  4.  
  5.    archivoLista=crearListaArchivos();
  6.  
  7.    arch=crearArchivo(nombre);
  8.    printf("archivo creado");
  9.  
  10.    insertarArchivoListaArchivos(archivoLista,arch);
  11.    printf("lista creada");
  12.  
  13.    dir->lista=archivoLista; //ACA ME TIRA EL ERROR EN EL DEBUGGER
  14.  
  15.    return arch;
  16. };

Funcion para insertar archivo en lista de archivos:
Código
  1. void insertarArchivoListaArchivos(ListaArchivos &lista, Archivo archivo){
  2.  
  3.    ListaArchivos aux, nuevoArch=new _listaArchivos;
  4.  
  5.    nuevoArch->siguiente=NULL;
  6.    nuevoArch->archivo=archivo;
  7.  
  8.    if(lista==NULL){
  9.        lista=nuevoArch;
  10.    }
  11.    else{
  12.        aux=lista;
  13.  
  14.        while(aux->siguiente!=NULL)
  15.            aux=aux->siguiente;
  16.        aux->siguiente=nuevoArch;
  17.    }
  18. };

La cosa es así: Yo le paso a la primera funcion una estructura de tipo Directorio, y una cadena con el nombre al que le quiero asignar al archivo a incluir en la lista de archivos dentro de la estructura directorio.

El error me lo tira cuando quiero igualar la lista creada localmente en la primera funcion, con la lista que está declarada e inicializada en la estructura directorio.

Supongo que es me falta reservar espacio de memoria en algún lado, no me doy cuenta donde...

Alguna idea?

Desde ya, cualquier aporte sera muy agradecido! Si tienen dudas sobre el codigo pregunten.


Saludos!
3  Programación / Programación C/C++ / Duda sobre lista de un typedef struct en: 1 Noviembre 2013, 20:38 pm
Buenas tardes, vuelvo a ustedes con una pregunta concreta sobre dos structs.

Tengo la estructura _archivo


Código
  1. struct _archivo{
  2.    Cadena Contenido;
  3.    Cadena Atributos;
  4.    Cadena nombreArchivo;
  5. };
  6. typedef _archivo* Archivo;
  7.  

, que guarda nombre, atributos y contenido de un archivo, Y la estructura _listaArchivo:

Código
  1. struct _listaArchivos{
  2.    _archivo *Archivo;
  3.    _listaArchivos *Siguiente;
  4. };
  5. typedef _listaArchivos *ListaArchivos;

, la cual debera poder ser capaz de hacer una lista simple de tipo archivo....
No se como definir estas dos struct para hacer funcionar esta realidad planteada. Alguna idea? 
4  Programación / Programación C/C++ / Problema structs en: 29 Octubre 2013, 22:52 pm
Código
  1. struct _directorio{
  2.    Cadena nomDir;
  3.    _directorio *ptrIZQ;
  4.    _directorio *ptrDER;
  5.    _archivo *ptrArchivo;
  6. };
  7. typedef _directorio *Directorio;

Código
  1. struct _sistema{
  2.    _directorio *ptrDirectorio;
  3. };
  4. typedef _sistema *Sistema;

Código
  1. typedef struct _archivo{
  2. Cadena Contenido;
  3. Cadena Atributos;
  4. Cadena nombreArchivo;
  5.  _archivo *siguiente;
  6. };
  7. typedef _archivo *Archivo;

Código
  1. struct _listaArchivos{
  2.    Cadena nomArchivo;
  3.    _listaArchivos *Siguiente;
  4. };
  5. typedef _listaArchivos *ListaArchivos;

Cada una de estas estructuras son la estructura de varios headers en los que tengo definidas funciones varias, con el proposito de crear algo similiar a un Filesystem... o sea tiro comando parametro.. y manipulo el filesystem, creo, elimino y modifico directorios, archivos, etc....
Quiero saber donde esta mi error al definir todos ellos, porque me tira errores de tipo:

"ISO C++ forbids declaration of `archivo' with no type" (en el header de directorio)

o tambien "error: `Archivo' does not name a type" (en el header de listaArchivo)

... Supongo que podria ser un problema de definicion, o de incluir que header en que header... Pero no me doy cuenta. Si no me doy a entender bien haganmelo saber.

Desde ya muchas gracias.-
5  Programación / Programación C/C++ / Presentacion y dudas varias. en: 25 Octubre 2013, 02:35 am
Buenas noches foreros!

Me llamo Sebastian, tengo 21 y estoy estudiando programacion a nivel tecnico en una universidad de Uruguay. Espero poder ayudar mas adelante y obtener respuesta en algunos problemas que se me han planteado, si fueran tan amables.

El problema que tengo que resolver es hacer un programa en C++ que funcione como una especie de filesystem, o sea, escribis comando un comando, y tales parametros... y el programa te va creando el filesystem.

Se compone de varios tipos... Sistema, Directorio, Archivo y ListaArchivo.
Yo necesito crear una estructura para cada uno de estos muchachos de forma que logre despues programar funciones que vayan formando el arbol de directorios con sus archivos, esto funciona con punteros... Ellos me dieron los headers de cada tipo, pero no entiendo como puedo definirlos. Se les ocurre como?
Ademas, quisiera saber como debo interpretar el asterisco en el typedef _Eltipodedato*


/* el archivo debe contar con nombre, atributos de e/s y un contenido de tipo cadena */

struct _archivo{

}
typedef _archivo* Archivo;


/* el directorio debe contar con un nombre de directorio */
struct _directorio{

}

typedef _directorio* Directorio;

/* la lista de archivos debe contener una lista con todos los archivos en cierto directorio */
struct _listaArchivos{

}
typedef _listaArchivos* ListaArchivos;

/* por ultimo la estructura del sistema debe ser la necesaria para manipular todo el arbol a medida que es creado */
struct _sistema{

}
typedef _sistema* Sistema;

Si se les ocurre algo me salvan la vida! Cualquier aporte es agradecido! Desde ya muchas gracias a todos.

Ccomplica.-
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines