SoloCodigo
Programación General => C/C++ => Mensaje iniciado por: JuanMi en Viernes 13 de Junio de 2003, 22:32
-
Pues lo dicho, en el contexto de la siguiente función, qué significado tiene
la expresión: if(datos.nombre[0]), sobre todo el cero entre corchetes.
¿A qué sería equivalente?
Gracias anticipadas;
Juan
/***************************************************************************
***
* MOSTRAR LISTADO EN FICHERO DE TEXTO
*
****************************************************************************
***/
void listar_a_texto(void)
{
int i;
FILE*destino;
char fichero[80];
gotoxy(15,18);
textcolor(WHITE);
cprintf("Introduce la ruta del archivo destino: n");
fflush(stdin);
gotoxy(54,18);
gets(fichero);
if ((destino=fopen(fichero,"w"))==NULL)
{
gotoxy(20,20);
cprintf("No se pudo abrir el archivo");
gotoxy(1,25);
cprintf("Presione una tecla para continuar ...");
getch();
}
else
{
gotoxy(25,22);
textcolor(YELLOW);
textbackground(RED);
cprintf("*** Archivo de salida generado ***");
gotoxy(1,25);
system("pause");
fprintf(destino,"NOMBRE APELLIDO 1 APELLIDO 2 DIRECCION
TFNO.FIJO TFNO.MOVILn");
fprintf(destino,"------------ ------------ ------------- -------------------
--------- ----------n");
for (i=0;i<cuenta_personas;i++)
{
if(datos.nombre[0])
{
fprintf(destino,"%-12s %-12s %-13s %-19s %-9s %-9sn",
datos.nombre,datos.primer_apellido,datos.segundo_apellido,datos.
direccion,datos.telefono,datos.movil);
}
}
}
fclose(destino);
}
-
eso es una array asociativo multidimensional, y quiere decir que si el valor de esa parte del array es distinto de cero se cumpla lo que hay dentro del if.
-
A ver, no es del topdo cierto lo ke dije, si has programado en visual basic alguna vez entenderas el concepto de menu.controldelmenu pos es algo asi, solo que el controldelmenu es un array, y esta indicando que evalue el valor de la posicion 0 del array. si es distinto de cero se da paso al contenido de la sentencia if.
-
lo q en español se traduce a "comprueba si existe ese dato, porque si el primer caracter del nombre es nulo, no existe"