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 - metallikapo

#1
Programación C/C++ / Re: [C] Como usar time.h
10 Julio 2013, 06:17 AM
Cita de: Siuto en  6 Marzo 2006, 16:31 PM
Bueno gracias pude hacer lo que queria pero hay un par de cosas que no las entiendo:

struct tm *hora;
Porque, se declara esto? Y porque como un puntero?

printf("%d:%d:%d", hora->tm_hour, hora->tm_min, hora->tm_sec);
Que es esto: "->", que hace eso?

Hola:
Que sea un puntero a la estructura tm hace que pases por referencia las llamadas a función, lo que ocupa menos stack, Al margen de eso, en varios prototipos de las funciones de time.h se utilizan punteros del tipo struct tm *.

printf("%d:%d:%d", hora->tm_hour, hora->tm_min, hora->tm_sec);
Esto lo que hace es lo siguiente: El %d del printf indica que el argumento que espera recibir es un número entero. Y hora es una variable del tipo struct tm *. Justamente es un puntero a estructura, para llamar a algo que está dentro de la estructura a la que apunta, se utiliza ese formato: hora->tm_hour. Esto da como un resultado un número entero entre 0 y 23, hora->tm_min daría un entero entre 0 y 59, y lo mismo pasaría con hora->tm_sec.

Saludos