Partage
  • Partager sur Facebook
  • Partager sur Twitter

Avoir l`heure en C++

Sujet résolu
3 mai 2008 à 18:41:57

Coucou
J`aimerai savoir si il y as une méthode simple pour récupèrer l`heure en C++ , aussi simple que récupèrer la date.

#include <iostream>
#include <string.h>
#include <time.h> 

using namespace std; 

int main()
{
char tmpbuf[128]; 
_strdate( tmpbuf ); 
cout << tmpbuf << endl; 

system("PAUSE");
return 0;
}


Je ne connais pas du tout time.h

Autres question un peu hors sujet.

Quel est l`utilitée du CLS :
System("CLS");


Je connais sytem("PAUSE"): qui permet de mettre sur pause le programme.

Merci beaucoup as tous le monde.
@++
Greg
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
3 mai 2008 à 18:46:07

ctime en C++, pas time.h.

Regarde ctime sur google et tu trouveras [je sais plus].

CLS : sur DOS ça vide la console.
N'existe pas sur Unix je crois. [clear]

Le paramètre de system n'est pas toujours portable.

Citation : gogeta1

boost.date_time

Oui et non : s'il veut faire qqch de très basique non, sinon pourquoi pas. [doc]
  • Partager sur Facebook
  • Partager sur Twitter
3 mai 2008 à 19:06:42

la fonction time te renvoie le nombre de seconde depuis
le 1er Janvier 1970 à Minuit.

apres pour la date c'est assez simple ;)


cout<<time(NULL)<<endl;

1209834400


à l'heure ou j'ai envoyer ce message
  • Partager sur Facebook
  • Partager sur Twitter
3 mai 2008 à 20:03:28

Merci beaucoup. :D

J`ai ouvert time.h et j`ai trouver assez facilement.

#include <iostream>
#include <string.h>
#include <time.h> //ne pas oublier

using namespace std; 

int main()
{
char heure[128]; 
_strtime( heure ); 
cout << heure << endl; 

system("PAUSE");
return 0;
}



la méthode de neuneutrinosest trés utile.
Elle sert as quoi la bibliothéque Boost ?
Greg
  • Partager sur Facebook
  • Partager sur Twitter
3 mai 2008 à 20:55:27

Boost sert à plein de chose (cf signature)
  • Partager sur Facebook
  • Partager sur Twitter
3 mai 2008 à 23:05:37

Sans vous vexez, boost parait super compliquer. :p
Au moins, il connaît l`heure et les Math. ^^
Greg
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
3 mai 2008 à 23:10:13

mais non boost n'est pas compliqué.
Suffit de lire la doc.
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
4 mai 2008 à 12:46:21

Citation : hiura

ctime en C++, pas time.h.



Citation : hiura

Regarde ctime sur Google et tu trouveras [je sais plus].

Tu trouveras plus d'info que dans le fichier ctime.

Citation : hiura

Citation : gogeta1

boost.date_time

Oui et non : s'il veut faire qqch de très basique non, sinon pourquoi pas. [doc]

Si tu ne lis pas la doc, comment veux-tu savoir ce que Boost permet de faire? o_O

De plus, il y a suffisamment d'exemples pour bien comprendre.
  • Partager sur Facebook
  • Partager sur Twitter
4 mai 2008 à 15:50:29

http://www.boost.org/doc/libs/1_35_0/d [...] six_time.html

C'est peut-être plus ce que tu cherches.
C'est vrai que avec ctime, c'est beaucoup plus facile, mais boost est beaucoup plus complet.
  • Partager sur Facebook
  • Partager sur Twitter
4 mai 2008 à 20:17:40

J`ai utilisée ctime.
J`ai galéré comment convertir une variable char -> wchar_t
Mais j`ai pu enfin mettre l`heure dans irrlicht.
Tel était mon but. :p

J`ai créé mes variables dans la boucle infini de Irrlicht. :-°
Si je la sort de la boucle, elle reste fixe. Sa c`est évident. ;)

Ma questions peu être stupide.
Chaque fois que le programme fait un tour sur la boucle, il créer alors une nouvelle variable n`est ce pas ?

Dans un sens, le programme ne peu pas créer plusieurs variable du même nom et du même type.
Sauf si cette règle fonction que pendant la compilation.

C`est grave de créer une variable char dans une boucle infinie ?

Mes variables que j`ai créé dans ma boucle infinie.
Ai-je le droit Si je détruit mes variable tout à la fin de la boucle.
Alors dans ma mémoire vive, tout ira bien ? :)

Greg
  • Partager sur Facebook
  • Partager sur Twitter
4 mai 2008 à 21:02:00

Citation : greg3395

J`ai galéré comment convertir une variable char -> wchar_t


as-tu utilisé autre chose que std::ctype ? si oui tu pourais me montrer, je suis curieux de voir comment faire sans std::ctype

Citation : greg3395

Chaque fois que le programme fait un tour sur la boucle, il créer alors une nouvelle variable n`est ce pas ?


oui j'imagine, ca depend peut-etre de l'utilisation de ta variable et des options de compilation

Citation : greg3395

C`est grave de créer une variable char dans une boucle infinie ?


non

Citation : greg3395

Ai-je le droit Si je détruit mes variable tout à la fin de la boucle.


si tes variables ne sont pas alloués dynamiquement, elles se detruisent toute seule à la fin de leur portée, sinon tu dois les detruires explicitement avec delete (ou delete[])
  • Partager sur Facebook
  • Partager sur Twitter
4 mai 2008 à 23:30:51

le code trouvé utilise std::ctype ;)
Le code fonctionne sous Visual C++ 2008
Mais ne fonctionne pas sous dev-cpp

Je peu pas dire pourquoi sous VC sa fonctionne et pas sous Dev
Si ta une meilleur technique, dit le moi.

Je vais chercher de faire l`inverse wchar_t -> char
J`aurai besoin si j`utilise une librairie MySQL

Voila le code:

#include <string>
#include <iostream>

using namespace std;

void wsubstring(wchar_t *dest, const wchar_t *src, const int from, const int length)
{
int i;
for (i=0; i<length; i++)
dest[i] = src[i+from];
dest[i] = '\0';
}
   
void charToWchar(char *in, wchar_t *out)
{
   std::use_facet< std::ctype<wchar_t> >(std::locale()).widen(in,in+strlen(in),out);
   wsubstring(out, out, 0, strlen(in));
}
 
int main()
{
char in[255] =  "coucou ca va";
wchar_t out[255];
charToWchar(in, out);
wcout << out << "\n";
 
system("PAUSE");
return 0;
}


Le compilateur sur Dev détecte l`erreur sur cet ligne :
wcout << out << "\n";



Greg
  • Partager sur Facebook
  • Partager sur Twitter
5 mai 2008 à 12:48:42

Citation : greg3395

Je vais chercher de faire l`inverse wchar_t -> char


aussi avec std::ctype

pour ton code j'ai pas regardé, j'ai pas le temps maintenant
  • Partager sur Facebook
  • Partager sur Twitter
6 mai 2008 à 9:32:59

Citation : Pas de titre

std::ctype



ctype est include dans std comme cout ou cin ? :euh:
Car au début je fait toujours

Citation : Pas de titre

using namespace std;



Greg
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
6 mai 2008 à 13:25:01

std : espace de nomage
:: : résolveur de portée

ctype appartient donc à l'espace de nomage std.
  • Partager sur Facebook
  • Partager sur Twitter