Bonsoir Edgar,
Merci de me rappeler quelques regles. Je reprends d'anciens programmes!
Cependant je ne peux pas faire sans alarm:
extern int w_r_c(const char *fmt, ...);
car je fais dans la sous-routine (c)
double w_r_d (char *fmt, ...) {
char *p ;
do {
for (p = fmt ; *p ; p++) {
J'ai essaye:
double w_r_d (char *const fmt, ...) {
Ce qui eveite les alarm dans la sous-routine mais qui laisse les memes
alarm dans la compilation du programme avec:
input_t = (char) w_r_c ("Type of signal: (P)ulse or (C)W (%c) ? ", input_t) ;
warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
Il doit y avoir une solution !
===========================================================================
Patrick DUPRÉ | | email: pdupre@???
Laboratoire de Physico-Chimie de l'Atmosphère | |
Université du Littoral-Côte d'Opale | |
Tel. (33)-(0)3 28 23 76 12 | | Fax: 03 28 65 82 44
189A, avenue Maurice Schumann | | 59140 Dunkerque, France
===========================================================================
> Sent: Sunday, March 08, 2015 at 7:30 PM
> From: "Edgar Bonet" <guilde@???>
> To: guilde <guilde@???>
> Subject: Re: Question de C++
>
> Salut !
>
> Patrick DUPRÉ a écrit :
> > warning: deprecated conversion from string constant to ‘char*’
> > [...]
> > extern int w_r_c (char *fmt, ...) ;
> > [...]
> > input_t = (char) w_r_c ("Type of signal: (P)ulse or (C)W (%c) ? ", input_t)
>
> Une chaîne de caractères explicite, comme "Type of signal..." n'est pas
> un tableau de char, mais un tableau de const char. Si ta fonction a
> vraiment besoin de changer son paramètre fmt (ce qui semble peu probable),
> il faut l'appeler en lui passant un tableau modifiable. Si ta fonction
> ne fait que lire sa chaîne de format, alors tu la déclares comme ceci :
>
> extern int w_r_c(const char *fmt, ...);
>
> À+,
>
> Edgar.
>
>