Wyświetlenie aktualnej godziny

0

Mam następujący kod:

 
#include <stdio.h>
#include <time.h>
#include <locale.h>
char getTime(){
    time_t sek;
    struct tm strukt;
    char wynik[10];
    time(&sek);
    strukt = *localtime(&sek);
    strftime(wynik, 10 , "%T", &strukt);
    puts(wynik);
}
int main(){
    getTime();
    return 0;
}

Chciałem wyświetlić godzinę ale poprzez zwracanie wartości przez funkcję. Czy mógłby ktoś poradzić jak to zrobić bez błędów kompilacji?

0

Podaj błędy :)

0

Już mam rozwiązanie, nie wiem czy optymalne ale dla mnie wystarczy :) Główny problem był w zwracaniu tekstu przez funkcje. Rozwiązałem to w następujący sposób:

 #include <stdio.h>
#include <time.h>
#include <locale.h>
char getTime(char *wynik){
    time_t sek;
    struct tm strukt;
    time(&sek);
    strukt = *localtime(&sek);
    strftime(wynik, 10 , "%T", &strukt);
}
int main(){
    char data[10];
    getTime(data);

}
0

Może zamiana char na void oraz pobranie końcowego wyniku (bardziej przesłanie) poprzez return printf na przykład?

0

Tą datę zapisuje potem do listy, da się to jakoś powiązać z tym printfem?

0

@teomos, a po ludzku nie można?

int main()
   {
   char data[10];
   time_t sek=time(0);
   strftime(data,10,"%T",localtime(&sek));
   printf("%s\n",data);
   return 0;
  }
0

Dragon - kolega napisał, że chce to robić przez funkcję, dlatego nie mieszałem za bardzo :) Możesz zrobić, zeby z returna zwracało tylko date - bez printfa - do jakiejś zmiennej a później działać na tej zmiennej. Czyli zrobić oddzielnie printfa i oddzielnie zapis do listy. tadam?

1

@Mormo, mnie chodziło o niepotrzebne struktury i niepotrzebne kopiowania i przekształcenia. Z funkcją też można?

char *teraz()
  {
   static char data[10];
   time_t sek=time(0);
   strftime(data,10,"%T",localtime(&sek));
   return data;
  }

int main()
  {
   printf("%s\n",teraz());
   return 0;
  }
0

@teomos zależy w jaki sposób jest ta godzina dodawana do listy? Czyli np. przez funkcję Dodaj(godzina, minuta, sekunda) ? Czy jak ? :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1