¡Foto!

¡Envia tu foto al Fotomaton!

Asignación en un condicional

3 comentarios · 3.753 lecturas · programacion

¿Os habéis olvidado alguna vez de un paréntesis de asignación de descriptor de fichero, fifo en este caso, en un condicional? Pues yo, desgraciadamente sí.

Es un tópico, lo sé, pero es lo que hay. Estudiando para un exámen de DFU de procesos, señales, SysCalls, FIFOs, pipes, semaforos, IPC System V, memoria compartida y demás...

#include
#include
#include
#include

char fifo[]="/home/mz";

void fallo( char msj[40], int error );

int main ( int argc, char **argv[] ) {
int descript, id_shm;
char mensaje[80], *buffer;

if ( mkfifo(fifo,0666) < 0 )
fallo("Error creando fifo...",-1);
if ( ( descript=open(fifo,O_RDONLY|O_NONBLOCK) ) < 0 )
fallo("Error...",-2);
if ( id_shm=shmget(CLAVE,4,IPC_CREAT|0666) == -1 )
fallo("Error...",-3);
if (( buffer=shmat(id_shm,0,0)) == NULL )
fallo("Error adosando IPC",-4);
[...]

El problema viene cuando tienes un extenso programa por delante, y se te olvida un detalle: los paréntesis de la asignación al descriptor. Obvias un detalle como éste y, te pasas todo un día buscando un fallo de concepto por un código sin errores.

Y, seamos francos, en la programación o tienes buen día, o no. No hay término medio. O tienes un día lúcido y las ideas frescas o eres un paleto que ni las operaciones básicas te funcionan.

Por suerte al día siguiente me levante fresco como una lechuga, detecté el error y todo fue sobre ruedas.


3 comentarios · Escrito el 10-Mar-2005 · Ver menciones
Recomendar por correo · Meneame · Añadir a del.icio.us

3 Comentarios


#1 Publicado hace 2 años
Ruyk Lector

Navegando con Mozilla Firefox
Bajo Linux

Buscando por semáforos FIFO (en un día poco lúcido por cierto) y me sale esto.. vete pal carajo manz xDDDD

#2 Publicado hace 3 meses
Martin Lector

Navegando con Internet Explorer
Bajo Windows XP

Mira la verdad no tengo tantos conocimientos, como los tienes tu, pero en los programitas que he hecho, me ha pasado lo mismo, al tal punto que ya no quiere uno saber del programa en cuestion(espero que sea solo mi caso), pero como dices es algo insignificante lo que hace que no funcione todo y no te permite avanzar para terminar algun programa.

#3 Publicado hace 3 semanas
_ALEX_ Lector

Navegando con $ua
Bajo $ua

Concuerdo con eso de que "o tienes un buen dìa o no" .... aunque me ha pasado tener buen medio dìa y mal el resto :P

Deja tu comentario


en Internet.




Consejos


  • Los comentarios fuera del tema del artículo (OFF-TOPIC) serán eliminados.
  • Escribir completamente en MAYUSCULAS en Internet equivale a GRITAR y está mal visto.
  • No utilices lenguaje SMS, en Emezeta no te cobramos por letras escritas.
  • No hagas publicidad de tu página o dejes enlaces en el comentario para aumentar el PR o la popularidad en buscadores. En Emezeta se aplica el tag nofollow, que hace que Google ignore esos enlaces.
  • No insultes. Al escribir un comentario tus datos quedan almacenados y serás el único responsable de tus palabras. Se permite la libertad de expresión y de opinión, pero no los comentarios ofensivos.
  • Puedes insertar algunas etiquetas HTML en los comentarios: em, a href, b, i, em, code, acronym y strong.
  • Es posible añadir una foto junto a tus comentarios, para ello sólo tienes que personalizarla en Gravatar. [?]

Envía tu foto


Fotomatón Emezeta

Envia tu fotografía al fotomatón de Emezeta. Puedes enviar varias y saldrás en la portada de Emezeta.


Artículo de http://www.emezeta.com/

10 consultas efectuadas / Página generada en 0.042 segundos

Programado íntegramente por José Román (Manz) en XHTML y CSS estándar.

Sindicado bajo Feed RSS. Contenido bajo licencia Creative Commons

Estadísticas de visitas · Términos y condiciones · Contacto · Publicidad · Preguntas frecuentes (FAQ)