/bin/bash: line 1: 1408 Erreur de segmentation (core dumped) ./ex2
Ah oui, bien sur : la fonction « time » prend un argument, or tu n'en as pas mis. Si tu avais inclus time.h, le compilateur t'aurait indiqué l'erreur.
Et s'il avait mis des options de warning minimales il aurait su que le time.h n'avait pas été inclu.
On devrait faire une FAQ, comme première ligne je verrais bien 'surtout ne programmez jamais en C', ou alors comme sur la porte de l'Enfer de Dante Alighieri 'Voi ch'entrate, lasciate ogni speranza'.
-- http://patrick.davalan.free.fr/
Luc Habert wrote:
titi :
/bin/bash: line 1: 1408 Erreur de segmentation (core dumped) ./ex2
Ah oui, bien sur : la fonction « time » prend un argument, or tu n'en
as pas mis. Si tu avais inclus time.h, le compilateur t'aurait indiqué
l'erreur.
Et s'il avait mis des options de warning minimales il aurait su que le
time.h n'avait pas été inclu.
On devrait faire une FAQ, comme première ligne je verrais bien 'surtout
ne programmez jamais en C', ou alors comme sur la porte de l'Enfer de
Dante Alighieri 'Voi ch'entrate, lasciate ogni speranza'.
/bin/bash: line 1: 1408 Erreur de segmentation (core dumped) ./ex2
Ah oui, bien sur : la fonction « time » prend un argument, or tu n'en as pas mis. Si tu avais inclus time.h, le compilateur t'aurait indiqué l'erreur.
Et s'il avait mis des options de warning minimales il aurait su que le time.h n'avait pas été inclu.
On devrait faire une FAQ, comme première ligne je verrais bien 'surtout ne programmez jamais en C', ou alors comme sur la porte de l'Enfer de Dante Alighieri 'Voi ch'entrate, lasciate ogni speranza'.
-- http://patrick.davalan.free.fr/
Emmanuel Delahaye
Je n'arrive pas à générer de nombres aléatoires avec random() :-(
time_t t=time() srandom(t) ne fait rien non plus
(debian)
Les fonctions standard du C sont srand() et rand().
<...> Pour la portabilité, utilise plutôt rand() et srand(), qui sont POSIX.
Avant d'être POSIX.1, ils sont surtout standard C... Tout ce qui est standard C est POSIX.1 par définition.
-- A+
Emmanuel Delahaye
Harpo
titi wrote:
Pour le plaisir:
ex2.c: # include <stdio.h> # include <stdlib.h>
main (void) { time_t t=time(); srandom(t); int rnd=rand(); printf("%i",rnd); rnd=random(); printf("%i",rnd); } gcc -o ex2 ex2.c;
avec les options -W et -Wall :
random.c:6: warning: return type defaults to 'int' random.c: In function 'main': random.c:7: warning: implicit declaration of function 'time' random.c:13: warning: control reaches end of non-void function
./ex2 /bin/bash: line 1: 1408 Erreur de segmentation (core dumped) ./ex2
Parce que vous exécutez un programme comme ça ?
:-) !
Vous êtes rigolo mais téméraire.
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
-- http://patrick.davalan.free.fr/
titi wrote:
Pour le plaisir:
ex2.c:
# include <stdio.h>
# include <stdlib.h>
main (void)
{
time_t t=time();
srandom(t);
int rnd=rand();
printf("%i",rnd);
rnd=random();
printf("%i",rnd);
}
gcc -o ex2 ex2.c;
avec les options -W et -Wall :
random.c:6: warning: return type defaults to 'int'
random.c: In function 'main':
random.c:7: warning: implicit declaration of function 'time'
random.c:13: warning: control reaches end of non-void function
./ex2
/bin/bash: line 1: 1408 Erreur de segmentation (core dumped) ./ex2
Parce que vous exécutez un programme comme ça ?
:-) !
Vous êtes rigolo mais téméraire.
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
main (void) { time_t t=time(); srandom(t); int rnd=rand(); printf("%i",rnd); rnd=random(); printf("%i",rnd); } gcc -o ex2 ex2.c;
avec les options -W et -Wall :
random.c:6: warning: return type defaults to 'int' random.c: In function 'main': random.c:7: warning: implicit declaration of function 'time' random.c:13: warning: control reaches end of non-void function
./ex2 /bin/bash: line 1: 1408 Erreur de segmentation (core dumped) ./ex2
Parce que vous exécutez un programme comme ça ?
:-) !
Vous êtes rigolo mais téméraire.
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
-- http://patrick.davalan.free.fr/
Hamiral
Emmanuel Delahaye wrote:
<...> Pour la portabilité, utilise plutôt rand() et srand(), qui sont POSIX.
Avant d'être POSIX.1, ils sont surtout standard C... Tout ce qui est standard C est POSIX.1 par définition.
Merci pour la précision :)
-- Hamiral
Emmanuel Delahaye wrote:
<...> Pour la portabilité, utilise plutôt rand() et srand(), qui
sont POSIX.
Avant d'être POSIX.1, ils sont surtout standard C... Tout ce qui est
standard C est POSIX.1 par définition.
<...> Pour la portabilité, utilise plutôt rand() et srand(), qui sont POSIX.
Avant d'être POSIX.1, ils sont surtout standard C... Tout ce qui est standard C est POSIX.1 par définition.
Merci pour la précision :)
-- Hamiral
titi
Harpo wrote:
titi wrote: avec les options -W et -Wall :
random.c:6: warning: return type defaults to 'int' random.c: In function 'main': random.c:7: warning: implicit declaration of function 'time' random.c:13: warning: control reaches end of non-void function
./ex2 /bin/bash: line 1: 1408 Erreur de segmentation (core dumped) ./ex2
Parce que vous exécutez un programme comme ça ?
Comment faut-il faire pour exécuter un programme ?
Vous êtes rigolo mais téméraire.
Ah?
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
J'avais pris la peine de mettre un sujet au fil, désolé de vous importuner.
Harpo wrote:
titi wrote:
avec les options -W et -Wall :
random.c:6: warning: return type defaults to 'int'
random.c: In function 'main':
random.c:7: warning: implicit declaration of function 'time'
random.c:13: warning: control reaches end of non-void function
./ex2
/bin/bash: line 1: 1408 Erreur de segmentation (core dumped) ./ex2
Parce que vous exécutez un programme comme ça ?
Comment faut-il faire pour exécuter un programme ?
Vous êtes rigolo mais téméraire.
Ah?
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
J'avais pris la peine de mettre un sujet au fil, désolé de vous importuner.
random.c:6: warning: return type defaults to 'int' random.c: In function 'main': random.c:7: warning: implicit declaration of function 'time' random.c:13: warning: control reaches end of non-void function
./ex2 /bin/bash: line 1: 1408 Erreur de segmentation (core dumped) ./ex2
Parce que vous exécutez un programme comme ça ?
Comment faut-il faire pour exécuter un programme ?
Vous êtes rigolo mais téméraire.
Ah?
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
J'avais pris la peine de mettre un sujet au fil, désolé de vous importuner.
titi
Emmanuel Delahaye wrote:
Je n'arrive pas à générer de nombres aléatoires avec random() :-(
time_t t=time() srandom(t) ne fait rien non plus
(debian)
Les fonctions standard du C sont srand() et rand().
Merci à ceux qui ont pris la peine de me l'expliquer.
J'ai vu ces pages après avoir posté ma question. La faq devrait m'aider.
Sylvain
titi wrote on 04/07/2006 22:23:
random.c:6: warning: return type defaults to 'int' random.c: In function 'main': random.c:7: warning: implicit declaration of function 'time' random.c:13: warning: control reaches end of non-void function
./ex2 /bin/bash: line 1: 1408 Erreur de segmentation (core dumped) ./ex2 Parce que vous exécutez un programme comme ça ?
Comment faut-il faire pour exécuter un programme ?
je pense qu'il fallait lire "exécuter un programme dont la compil a généré de tels warning".
les warnings ne sont jamais innocents et vous devez vous appliquer à en obtenir aucun (ça fait parti de l'apprentissage).
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
il est venu pour cela, et il n'y a aucune raison pour dénigrer les langages de m.... , oups ;))
J'avais pris la peine de mettre un sujet au fil, désolé de vous importuner.
oubliez la rmq, vous n'avez pas à vous justifier.
Sylvain.
titi wrote on 04/07/2006 22:23:
random.c:6: warning: return type defaults to 'int'
random.c: In function 'main':
random.c:7: warning: implicit declaration of function 'time'
random.c:13: warning: control reaches end of non-void function
./ex2
/bin/bash: line 1: 1408 Erreur de segmentation (core dumped) ./ex2
Parce que vous exécutez un programme comme ça ?
Comment faut-il faire pour exécuter un programme ?
je pense qu'il fallait lire "exécuter un programme dont la compil a
généré de tels warning".
les warnings ne sont jamais innocents et vous devez vous appliquer à en
obtenir aucun (ça fait parti de l'apprentissage).
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
il est venu pour cela, et il n'y a aucune raison pour dénigrer les
langages de m.... , oups ;))
J'avais pris la peine de mettre un sujet au fil, désolé de vous importuner.
random.c:6: warning: return type defaults to 'int' random.c: In function 'main': random.c:7: warning: implicit declaration of function 'time' random.c:13: warning: control reaches end of non-void function
./ex2 /bin/bash: line 1: 1408 Erreur de segmentation (core dumped) ./ex2 Parce que vous exécutez un programme comme ça ?
Comment faut-il faire pour exécuter un programme ?
je pense qu'il fallait lire "exécuter un programme dont la compil a généré de tels warning".
les warnings ne sont jamais innocents et vous devez vous appliquer à en obtenir aucun (ça fait parti de l'apprentissage).
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
il est venu pour cela, et il n'y a aucune raison pour dénigrer les langages de m.... , oups ;))
J'avais pris la peine de mettre un sujet au fil, désolé de vous importuner.
oubliez la rmq, vous n'avez pas à vous justifier.
Sylvain.
titi
Sylvain wrote:
titi wrote on 04/07/2006 22:23:
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
il est venu pour cela, et il n'y a aucune raison pour dénigrer les langages de m.... , oups ;))
Non, non, je pense qu'il était sérieux puisque d'après ses messages, il fait partie de l'"Organization: ARG ; Association pour la Rehabilitation du Goto"! ;-) (et l'assembleur sans sauts?)
Bon, je parcours la fac et je révise mon programme.
Merci pour les conseils! :-)
Sylvain wrote:
titi wrote on 04/07/2006 22:23:
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
il est venu pour cela, et il n'y a aucune raison pour dénigrer les
langages de m.... , oups ;))
Non, non, je pense qu'il était sérieux puisque d'après ses messages, il fait
partie de l'"Organization: ARG ; Association pour la Rehabilitation du
Goto"! ;-)
(et l'assembleur sans sauts?)
Bon, je parcours la fac et je révise mon programme.
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
il est venu pour cela, et il n'y a aucune raison pour dénigrer les langages de m.... , oups ;))
Non, non, je pense qu'il était sérieux puisque d'après ses messages, il fait partie de l'"Organization: ARG ; Association pour la Rehabilitation du Goto"! ;-) (et l'assembleur sans sauts?)
Bon, je parcours la fac et je révise mon programme.
Merci pour les conseils! :-)
Hamiral
Harpo wrote:
Vous êtes rigolo mais téméraire.
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
C'est quand même un peu rude, ça ... Pour info, fr.comp.lang.c n'est pas réservé aux experts en C, mais aussi à ceux qui n'y connaissent rien et veulent apprendre ...
-- Hamiral
Harpo wrote:
Vous êtes rigolo mais téméraire.
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
C'est quand même un peu rude, ça ...
Pour info, fr.comp.lang.c n'est pas réservé aux experts en C, mais aussi à
ceux qui n'y connaissent rien et veulent apprendre ...
Mon conseil, apprenez le C ou allez voir dans fr.comp.lang.basic
C'est quand même un peu rude, ça ... Pour info, fr.comp.lang.c n'est pas réservé aux experts en C, mais aussi à ceux qui n'y connaissent rien et veulent apprendre ...