j´ai une autre question
comment je fait pour demender au programme d´attendre 2 seconde ? (par ex)
je fait 2 truc de temps dans une boucle. Dans cette boucle je donne la valeur du temps dans une variable. Je soustrait a celle-ci la valeur du temps avant d´entrer dans la boucle, et lorsque c´est égal a 2 seconde, je sort de la boucle...
problème ! Pourquoi est-ce que le programme fait toutes ces manipulations AVANT de faire TOUT le reste !
par ex un programme ou il attend 1 seconde entre chaque entrée de ligne ( exemple au pif, qui n´a aucun interêt). Et ben chez moi, si par exemple je fait :
printf(...); / /ecrit un truc
long time1, time2;
time1=time2=time();
for(;time2-time1==1;time2=time())
{
/ /cette boucle est sensée ne rien faire pendant 1 seconde
}
printf(...); / /ecrit un autre truc
/ ********************************************/
Bon c´est con comme tout, mais dans l´hypothèse ou j´écrirait par exemple 3 ligne...quand je lançerait le programme, il attendra 3 seconde et m´affichera ensuite les 3 lignes...alors que je voudrait simplement qu´il attende 1 seconde entre chaque ligne...
vous pouvez m´aider ? ça ne métonnerai pas que ça vienne de la fonction utiliser ( time(), qui vient de time.h), mais j´aimerai en être sur.
merci d´avance. ( j´utilise vc++ 6.0 en shareware)
tout d´abord time() est fort imprécise
je te conseille timeGetTime() dans mmsystem.h si tu utilises Windows, qui te donne un temps en milliemes de secondes.
de plus, je te déconseille l´égalité :
time2-time2==1
mais plutot :
time2-time2>=1
car si jamais le test n´est pas effectué dans le temps PILE, alors ça ne sors jamais avec l´égalité...
bon, sur ce, bon WE, a dimanche soir !
´soir ! J´ai un peu trop vite avance dans la lecture de mon bouquin sur le C++ et j´ai carrement oublie une chose essentielle : ecrire les points importants qui aident bien ou qu´il ne faut pas oublier. Du coup j´ai un peu oublie quelques trucs par-ci par-là et c´est pour ca que je cherche des liens vers des notes ( meme si c´est en anglais) prises a la volee et qui les aurait - par un quelqonque hasard - mises a diponibilite des autres ![]()
:|
je vois pas..
Je te conseille d´aller jeter un oeil au menu du cours de casteyde et dès qu´il y a une section dont tu ne te rappelles plus comment faire bah.. tu regardes
. http://casteyde.christian.free.fr
salut
ok jvais essayer
ouais c´est mieux mais ca résou pas vraiment mon problème, le temps sécoule toujours avant d´afficher les 3 lignes, au lieu de sécouler
entre chaque ligne.
Bjr,
J´ai un petit probleme en C,sa serait sympa de m´aider,mon topic est dans programmation,merci pour cet aide
d´abord, perso, j´initialiserai le for avec time2=time1 par exemple au lieu de le faire avant
( et normalement ça marche pas de mettre plus de 2 operandes sur une meme ligne)
ensuite le resultat de time ou gettime n´est pas en secondes mais en milliemes je crois
donc faut pas tester 1 mais 1000
et mets juste un point virgule après le for à la place des accolades
Moi, j´ai un petit problème de le tutoriel de JeanYvesYves. Dans son tuto de SDL(celui pour apprendre àfaire bouger une image) il donne trois possibilité(llez voir, vous verrez de quoi je parle)pour écrire à peu près la même chose. Mais mon prob´, c´est que normalement la méthode 2 devrait moins saccader que la première. Mais au lieu de mùe mettre l´image, ca me met des sortes de grandes barres qui me remplit tout l´écran!!!
PS : adresse du site www.fvirtman.fr.st
salut a tous
je sai que je suis otalement hs mais au moins je polue pas avec un nouveau sujet
c´est pour savoir comment trouver tutes les statistiques du forum
vous savez celles du genre " nick le plus bavard" etc . ..
merci d´avance
dsl JY² si c´est hors sujet
[Newbie incoming]
Salut tout le monde. Voilà j´ai un problème(et j´ai cherché mais j´ai pas trouver la réponse et c´est pour ça que je viens là). J´ai commencé à apprendre le C il y a à peine deux jours et mon problème ce situe surtout au niveau du compilateur que j´utilise ( à savoir Dev-C++). Voilà alors déjà le seul moyen que j´ai trouvé pour faire un compiler en C c´est de faire un nouveau projet et pas un simple code source.
1ère question : Peut on compiler en C sans avoir à lancer un projet ( parce qu´il semblerait que ça me pose des problèmes par la suite).
Un autre problème ( un peu moindre, mais qui me permettrait d´éclaircir un peu ma situation): C´est que ( et j´ai entendu parler de cette fonction) mon programme se lance se ferme très rapidement ( je crois savoir que c´est un problème hyper connu qu´il doit y avoir des dizaines de topic de nOObs comme moi qui pausent cette question mais tant que je suis là, je me lache). Donc quelle fonction il faut rajouter et où? Pour l´instant mon code ressemble à ceci ( je sens que certains vont rire) :
int main()
{
printf(" Bonjour maître");
return 0;
}
Bon si je devais vous expliquer mon troisième problème et je pense qu´il vient justement du fait que j´ai du choisir projet à la place de code source.
Lorsque je compile un nouveau code source ( en plus du code de bonjour maître) et bien ça ne marche pas. J´ai donc choisi de ne pas inclure " bonjour" ( mon premier code source) dans la compilation. Le problème alors c´est que si la compilation marche ( et ce qui me fait vraiment c***r c´est qu´elle ne marche pas tout le temps " un quatrième problème?"). Alors l´executable porte le nom de ma première complation ( c´est à dire bonjour) et évidemment je ne peux pas voir ce qu´il y a d´écrit ( ce qui m´aiderait) vu que le programme se referme de suite;
Voilà ouf j´en ai fini avec mes problèmes, j´espère que vous avez compris ce que je vous ai dit et sinon ba dites le moi.
[Newbie fly away on a pretty cloud with a lot of sadness ( excusez je sais plus comment on dit tristesse en anglais)] < = Phrase pas très anglish
M´en vais me faire un Enemy Territory pour me défouler un peu moi.
J´ai pas tout compris mais perso, avec Dev-c++, j´arrive très bien à compiler un simple code source ( j´ai juste à le sauver quand il me le demande).
Pour éviter que le programme se ferme tout de suite, il faut que tu ajoutes un getchar(); avant le return 0;. En effet, dans le programme que tu as écris, il lis le programme, execute les différentes instructions jusqu´à rencontrer le " return 0;" qui dit de quitter la fonction main() et donc le programme. " getchar()" est une fonction qui récupère une touche entrée au clavier, donc ici, le programme s´arrètera au " getchar();" et attendras l´appui d´une touche avant de continuer
.
Pour le dernier problème, à vrai dire, j´ai pas très bien compris. Mais si ça persiste, je pense que le mieux à faire serait de reinstaller le compilateur et de vérifier que tu utilises bien la dernière version. Voilà.
( grrmbl et bien sûr jv.com bouzie tout le formatage de texte et coupe la fonction en deux)
Donc si l´on reprend ton programme ça nous donne :
int main()
{
printf("Bonjour maître");
getchar();
return 0;
}
Bien sûr, il te faut supprimer les espaces que rajoutent le forum entre les parenthèses et ailleurs
.
Ah bah il en a pas mis ^^´.
juste entre le < et le stdio.h>, y´a pas d´espaces hein ^^´.
Oki merci de ton aide, je vais voir ce que ça donne.
Ouais c´est vrai que je suis pas très clair mais c´est à dire que mes problèmes ne le sntpas non plus. Juste une question as tu réglé quelque chose de précis dans les options du compilateur où tu fais des codes sources sans rien changer? Parce que, je sais pas si le C et le C++ sont assez proche pour qu´un code fait en C soit compilé par un compilateur fait pour le C++. Je vais essayer voir si je rencontre des problèmes. Je verrais bien.
Ouais ba ça marche. Le î il a un code spécial à rentrer?
Sur l´executableil me fait une sorte d´underscore coller au plafond.