Ir ao conteúdo

C++ Problema com biblioteca ctime


Ir à solução Resolvido por allanxd,

Posts recomendados

Postado

Olá, eu estava trabalhando em um programa simples que pergunta a data de nascimento e retorna a idade e para ficar mais sofisticado eu inclui um código que usa a biblioteca ctime para pegar o horário do sistema. Porém, ao executar, o variável Mes que armazena o mês indicado no horário do sistema muda subitamente ao longo do programa.

#include <iostream>
#include <stdlib.h>
#include <ctime>
using namespace std;

int main()
{
	time_t timer;
	struct tm *horario;
	time(&timer);
	horario = localtime(&timer);
	int Ano = horario->tm_year + 1900;
	int Mes = horario->tm_mon + 1;
	int Dia = horario->tm_mday;
	int ano;
	int dia;
	int mes;
	int age;
  
	system("@echo off&color 0a&cls");
	cout << "\nInforme o dia do seu nascimento\n\n";
	cin >> dia;
	system("cls");
	cout << "\nInforme o mes do seu nascimento "
		 << "conforme tabela abaixo:\n\n"
		 << "Janeiro = 1\nFevereiro = 2\nMarco = 3\nAbril = 4\n"
		 << "Maio = 5\nJunho = 6\nJulho = 7\nAgosto = 8\n"
		 << "Setembro = 9\nOutubro = 10\nNovembro = 11\n"
		 << "Dezembro = 12\n\n";
	cin >> mes;
	system("cls");
	cout << "\nInforme o ano do seu nascimento:\n\n";
	cin >> ano;
	system("cls");
	int dAno = Ano - ano;
	if((Mes < mes) || ((Mes = mes) && (Dia < dia)))
	{
		age = dAno - 1;
		cout << "\nVoce nasceu em: " << dia << "/" << mes << "/" << ano
			 << "\nHoje e: " << Dia << "/" << Mes << "/" << Ano
			 << "\nA sua idade e: " << age << endl;
	}
	else
	{
		age = dAno;
		cout << "\nVoce nasceu em: " << dia << "/" << mes << "/" << ano << endl
			 << "\nHoje e: " << Dia << "/" << Mes << "/" << Ano << endl
			 << "\nA sua idade e: " << age << endl;
	}
	return 0;
}

Estou usando o Falcon C++ 3.3 como compilador e Windows 7 Starter como SO. Estou quase certo que nem o antivírus nem o firewall estão causando conflito.

Alguma ideia do que está causando o problema?

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!