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

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Presentacion y dudas varias.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Presentacion y dudas varias.  (Leído 2,413 veces)
Ccomplica

Desconectado Desconectado

Mensajes: 7


Ver Perfil
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.-


En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: Presentacion y dudas varias.
« Respuesta #1 en: 25 Octubre 2013, 09:09 am »

Un asterisco significa que es un puntero.

Y lo siento, pero no hacemos tareas desde cero. Si tienes alguna duda concreta si puedes hacerla.


En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
eferion


Desconectado Desconectado

Mensajes: 1.248


Ver Perfil
Re: Presentacion y dudas varias.
« Respuesta #2 en: 25 Octubre 2013, 09:10 am »

Ya que estás programando en c++, lo lógico es que hicieses uso de clases, no de structs. En c++ son muy similares pero es muchísimo más natural utilizar clases. No se qué sentido tiene que intenten enseñarte a programar c++ y te obliguen a meter structs al estilo de c.

En cualquier caso, deberías acostumbrarte a leer documentación... ya que al menos en este mundillo va a ser algo básico. Si no te gusta leer documentación deberías plantearte el dedicarte a otra cosa.

Te lo digo básicamente porque si tú pones "structs c" en google, por ejemplo, vas a encontrar documentación de sobra para poder hacer lo que quieres... de hecho la primera entrada, por ejemplo, que es la de la wikipedia, te explica todo lo que necesitas.

Una cosa es que estés atascado en una parte del código y no sepas que falla y otra muy diferente es que no hayas escrito una sola línea.

Ademas, quisiera saber como debo interpretar el asterisco en el typedef _Eltipodedato*

Ese asterisco está indicando que el tipo que estás definiendo va a funcionar como un puntero.



En línea

Ccomplica

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: Presentacion y dudas varias.
« Respuesta #3 en: 25 Octubre 2013, 14:39 pm »

No pretendo que me hagan ninguna tarea desde cero mi amigo. Pregunto si alguien tiene alguna idea de como puedo presentar las estructuras del programa. Nada mas. Te pido disculpas si me exprese mal.

Mi otra duda la plantie mal, yo tengo una estructura de este tipo:

struct _archivo{

}

y en el header que me dan ellos crea un tipo de datos para nombrar a esa estructura, me pregunta es porque ponen el asterisco del lado derecho del nombre del tipo, en vez de a la izquierda, que diferencia plantea eso? Gracias.

typedef _archivo* Archivo;
En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Presentacion y dudas varias.
« Respuesta #4 en: 25 Octubre 2013, 15:53 pm »

me pregunta es porque ponen el asterisco del lado derecho del nombre del tipo, en vez de a la izquierda, que diferencia plantea eso? Gracias.

typedef _archivo* Archivo;
Tengo mis dudas sobre tu pregunta.

En una declaración después del tipo (esto es, a su derecha) se puede utilizar un asterisco para indicar que la variable declarada (o alias en el caso de typedef) es un puntero. Por ejemplo:
Código
  1. struct _archivo {
  2.  
  3. };
  4.  
  5. // ...
  6.  
  7. // "Archivo" es un alias o nombre alternativo de "_archivo *"
  8. typedef _archivo *Archivo;
  9.  
  10. // "p" es un puntero de tipo "_archivo *"
  11. _archivo *p;

El asterisco solo se utiliza a la izquierda de una variable cuando esta es un puntero, ahí el carácter '*' es el operador de indirección y permite acceder al objeto en la dirección indicada:
Código
  1. struct _archivo {
  2.  
  3. };
  4.  
  5. // ...
  6.  
  7. _archivo foo;
  8. _archivo bar;
  9.  
  10. // "p" es un puntero de tipo "_archivo *"
  11. _archivo *p;
  12.  
  13. // ...
  14.  
  15. // Almacenamos la direccion de "foo" en "p"
  16. p = &foo;
  17.  
  18. // ...
  19.  
  20. // Accedemos a la variable "foo" utilizando indireccion
  21. bar = *p;

Si es otra cosa entonces por favor trata de preguntar de una forma mas clara y si es posible con un ejemplo.

Todo eso debe describirse en tu material de referencia, busca las secciones sobre estructuras, punteros y uso de alias (mediante typedef).

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Presentacion y dudas
Sugerencias y dudas sobre el Foro
magoo16s 1 2,806 Último mensaje 14 Abril 2009, 16:48 pm
por Sk9ITk5Z
Presentación y dudas
Programación C/C++
AlexKurban 4 3,061 Último mensaje 24 Octubre 2013, 00:29 am
por edr89
Presentación y exposición de dudas
Programación C/C++
Mahlahj 2 2,235 Último mensaje 27 Febrero 2018, 06:49 am
por Mahlahj
MOVIDO: Presentación y exposición de dudas
Foro Libre
Eleкtro 0 1,392 Último mensaje 26 Febrero 2018, 00:29 am
por Eleкtro
Presentacion y Dudas
Dudas Generales
alrobe 0 1,482 Último mensaje 31 Marzo 2020, 01:35 am
por alrobe
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines