
Enviado em 09/12/2016 - 09:00h
Boa tarde,#include <stdio.h>
#include <time.h>
// funcao format. Ela recebe um valor do tipo inteiro e caso este seja menor que 10
// ela inclui o 0 na frente. ex.: 1 antes 01 depois
// for fim retorna um ponteiro para uma variavel do tipo char com o valor da conversao
char *format(int number){
char *retorno,
ret[100];
int i;
if (number < 10){
sprintf(ret,"0%d",number);
retorno = ret;
return retorno;
}
else{
sprintf(ret,"%d",number);
retorno = ret;
return retorno;
}
}
// funcao que retorna data
char *data(void){
int dia,mes,ano;
char var1[100],
var2[100],
var3[100],
var4[100],
*dataPtr;
struct tm *local;
time_t t;
t = time(NULL);
local = localtime(&t);
dia = local -> tm_mday;
mes = local -> tm_mon + 1;
ano = local -> tm_year + 1900;
// por algum motivo precisa converter os valores retornados pelos ponteiros
// da funcao em variaveis do tipo char
sprintf(var1,"%s",format(dia));
sprintf(var2,"%s",format(mes));
sprintf(var3,"%s",format(ano));
// cria a variavel de retorno dos dados e cria um ponteiro para essa variavel
sprintf(var4,"%s/%s/%s",var1,var2,var3);
// retorna data no formato dd:MM:yyyy com um ponteiro
dataPtr = var4;
return dataPtr;
}
// funcao que retorna hora
char *hora(void){
int hora,minuto,segundo;
char var1[100],
var2[100],
var3[100],
var5[100],
*retorno;
struct tm *local;
time_t t;
t = time(NULL);
local = localtime(&t);
// obtem hora, minuto e segundo e os aloca em uma variavel do tipo inteiro
hora = local -> tm_hour;
minuto = local -> tm_min;
// por algum motivo precisa converter os valores retornados pelos ponteiros
// da funcao em variaveis do tipo char
sprintf(var1,"%s",format(hora));
sprintf(var2,"%s",format(minuto));
// cria a variavel de retorno dos dados e cria um ponteiro para essa variavel
sprintf(var5,"%s:%s",var1,var2);
// retorna hora no formato hh:mm:ss com um ponteiro
retorno = var5;
return retorno;
}
int main()
{
char data_sistema[100],
hora_sistema[100];
sprintf(data_sistema,"%s",data());
sprintf(hora_sistema,"%s",hora());
printf("%s\n",data_sistema);
printf("%s\n",hora_sistema);
}
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
VOL já não é mais como antes? (3)
É normal não gostar de KDE? (12)
E aí? O Warsaw já está funcionando no Debian 13? [RESOLVIDO] (15)
Secure boot, artigo interessante, nada técnico. (4)
copiar library para diretorio /usr/share/..... su com Falha na a... (1)









