Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Shon

#21
Hola, soy "nuevo" con este IDE. No entiendo muy bien a que se refiere con soluciones. Entonces  mi pregunta es, ¿Qué es un proyecto y una solución en VS?

gracias peña  :xD
#22
Hola,

he visto en varios sitios que hacen algo como esto:

int funcion(int arg1, char *arg2, ...) {
   /* lo que sea */
}


Qué hace esos tres puntos  :huh:

graciaaaaas

#23
Programación C/C++ / Duda en función memset
20 Septiembre 2010, 18:55 PM
Buenas


memset((void *) &dir_serv, 0, sizeof(struct sockaddr_in));


Poniendo o no el (void *), funciona.

Quería preguntaros, que diferencia hay en ponerlo y no ponerlo  y si es adecuado o no.

Graxie ;)
#24
Hola,

Tengo un array de caracteres, p.e:
char texto[100];

Este tiene datos que tengo que parsear para sacar ciertos valores que me interesan.

Quiero hacer una función que me devuelva los substring que hay entre 2 delimitadores.

Si tengo está frase:
Hola, estoy es una prueba.

Si invoco la funcion conlos delimitadores "estoy" y "prueba", me devolvería: es una.
Si hay varias cadenas encerradas entre otros estoy y prueba, me los deolveria también.

Necesito, que me devuelva todas las ocurrencias posibles y el número de estas para luego poder manejarlas en mi programa.

Estoy pensando en como hacerlo pero estoy un poco duditativo. Dentro de la función, he pensado usar strstr para sacar los punteros a "estoy" y "prueba" y con estos datos operarar para sacar la cadena resultante. Pero no sé muy bien, como implementar la llamada la función, gestionar la memoria arrays estáticos o memoria dinámica que pueda manejar y como devolverlos, etc...

Así que me vendría bien que me dieseis ideas de como hacerlo, de cómo obtener, por ejemplo, un string de cadenas con cada ocurrencia y luego otra variable que me indique el nº de estas.



char ** substring(const char *cadena, const char *inicio, const char *fin, int *num_ocurrencias);

Algo así tengo por ahora.. iré poniendo lo que se me ocurra. Cualquier sugerencia es bien recibida :)

Gracias adelantadas y perdón por el tocho :P

Lh: No hagas doble post, utiliza el botón modificar.

A ver que os parece esto:

char **substring(const char *cad, const char *begin, const char *end, int *num_ocurrencias) {
char *p, *q;
char **ppc;
int i = 0 , j  = 0;


for(;;i++) {
p = strstr(cad, begin);
if (p == NULL) break;

q = strstr(cad, end);
if (q == NULL) break;

p += strlen(begin);
ppc = (char **) realloc(ppc, sizeof(char *) * i+1);
ppc[i] = (char *) realloc(ppc[i], (q - p + 2) * sizeof(char));

for (j = 0; j < q-p; j++)
ppc[i][j] = *(p + j);

ppc[i][j] = '\0';

cad = q + strlen(end);
}
i--;

*num_ocurrencias = i;

return ppc;
}


Cuando invoco a la función:

char **encontrados = NULL;
int num_referencias = 0;

encontrados = substring(el_texto, "Inicio", "Fin", &num_referencias);

....

for (i = 0; i < num_referencias; i++) {
   free(encontrados[i]);
free(encontrados);
}



Parece que funciona.

Un saludo
#25
Pues parece que sí, he probado con gcc y he compilado con:
$gcc -Wall -pedantic programa.c

y no muestra ningún aviso y funciona bien.

Sin duda, tiene pinta de ser la mejor opción. Muchas gracias ;)
#26
Redes / Re: Duda sobre ARP y tabla ARP cache
19 Septiembre 2010, 17:02 PM
Buenas,

en mis apuntes tengo que cuando los equipos reciben un ARP Request, aprovechan y actualizan sus Tablas ARP, pero yo no he podido probar ya que ahora mismo sólo tengo un equipo. He trasteado con  "herramientas" que emulan redes LAN y pc3 no actualiza su tabla, no.

A ver si adquiero otro equipo para hacer pruebas.

Bueno, un saludo y gracias ;)

P.D. Cuidado con los apuntes que le dan a uno, que luego pasa lo que pasa ... jeje
#27
Cita de: do-while en 17 Septiembre 2010, 16:04 PM
¡Buenas!

Si son constantes lo mejor que puedes hacer es crearte un header en el que definas las constantes mediante #define. Luego lo unico que tendras que hacer es incluir el header en cada uno de los ficheros fuente o header en los que te haga falta utilizar esas consantes.

¡Saludos!

Esto lo he pensado, pero algunas de esas constantes, son arrays, por ejemplo:

int espada[] = {1, 2000, 300, 2000}

los datos que contiene el array, son codigos y datos constantes.

Por lo tanto no puedo usar el define :(

Gracias a los dos por vuestras respuestas. Seguire pensando en el tema y si se os ocurre algo más ponerlo por favor.

saludos
#28
Buenas

Estoy haciendo un programita para un juego en el que tendré varios ficheros con codigo, unos 10 .c y sus correspondientes .h

El asunto, es que necesito tener unas constantes que son las mismas para todos, es algo así como los tipicos .ini  que tienen parametros de configuracion y constantes.

Mi pregunta es, como y donde puedo definirlas para que esté todo debidamente organizado?

Gracias anticipadas
#29
Redes / Duda sobre ARP y tabla ARP cache
17 Septiembre 2010, 12:59 PM
Buenas

tengo este escenario:

---------
|  HUB |
---------
     |
-------------------------------
 |               |                   |
 pc1         pc2                pc3


Hago un ping de pc1 a pc2

Inicialmente las tablas Cache ARP están vacías. Pc1 hace una petición ARP a la dirección de broadcast. Al hacer esta petición, que tablas caché se modifican con la dirección MAC de pc1? La de pc2 sólo? También la de pc3?

Gracias anticipadas
#30
Vaya!! Pues uno de los programas a los que me refiero es hping3:
http://www.hping.org/

Que tiene la reostia de variables globales xD

Puede haber algún motivo en el que no haya más remedio que tener que tirar de variables globales?

No me mal interpretes, no es que no me crea que no son recomendables para nada, es que me parece bastante raro, que el programador de esa aplicación haya hecho una chapuza tan grande jeje

un saludo