Ce qui ne pose pas de problème particulier pour le compilateur : si ça peut être une constante numérique, c'est une constante numérique -- sinon, c'est un identificateur.
Mais certains compilos acceptent des extensions. Du coup, 153vx serait considéré comme un identificateur par un compilo, et comme une constante numérique de type "vx" par un autre.
Une extension suppose une exploitation d'un comportement indéfini. Un compilateur qui n'émet pas de message d'erreur pour 123vx n'est pas conforme. Évidemment, une fois le message d'erreur émis...
En attendant, je ne connais pas de compilateur qui a cette extension particulière.
-- James Kanze GABI Software mailto: Conseils en informatique orientée objet/ http://www.gabi-soft.fr Beratung in objektorientierter Datenverarbeitung 11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16
Fabien LE LEZ <gramster@gramster.com> wrote in message
news:<skvgtvkttt3ilid99355gk22n7o2f4rkkv@4ax.com>...
On 11 Dec 2003 01:51:25 -0800, kanze@gabi-soft.fr wrote:
Ce qui ne pose pas de problème particulier pour le compilateur : si
ça peut être une constante numérique, c'est une constante numérique
-- sinon, c'est un identificateur.
Mais certains compilos acceptent des extensions. Du coup, 153vx serait
considéré comme un identificateur par un compilo, et comme une
constante numérique de type "vx" par un autre.
Une extension suppose une exploitation d'un comportement indéfini. Un
compilateur qui n'émet pas de message d'erreur pour 123vx n'est pas
conforme. Évidemment, une fois le message d'erreur émis...
En attendant, je ne connais pas de compilateur qui a cette extension
particulière.
--
James Kanze GABI Software mailto:kanze@gabi-soft.fr
Conseils en informatique orientée objet/ http://www.gabi-soft.fr
Beratung in objektorientierter Datenverarbeitung
11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16
Ce qui ne pose pas de problème particulier pour le compilateur : si ça peut être une constante numérique, c'est une constante numérique -- sinon, c'est un identificateur.
Mais certains compilos acceptent des extensions. Du coup, 153vx serait considéré comme un identificateur par un compilo, et comme une constante numérique de type "vx" par un autre.
Une extension suppose une exploitation d'un comportement indéfini. Un compilateur qui n'émet pas de message d'erreur pour 123vx n'est pas conforme. Évidemment, une fois le message d'erreur émis...
En attendant, je ne connais pas de compilateur qui a cette extension particulière.
-- James Kanze GABI Software mailto: Conseils en informatique orientée objet/ http://www.gabi-soft.fr Beratung in objektorientierter Datenverarbeitung 11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16
kanze
"Alain Naigeon" wrote in message news:<3fd8e88c$0$29082$...
a écrit dans le message news:
Fabien LE LEZ wrote in message news:...
On Wed, 10 Dec 2003 12:16:03 +0100, Serge Paccalin wrote:
Si on tolérait les identifiants commençant par un chiffre, 0xff en serait un valide.
Idem avec 42ul.
Ce qui ne pose pas de problème particulier pour le compilateur : si ça peut être une constante numérique, c'est une constante numérique -- sinon, c'est un identificateur.
Il n'empêche, j'avais tout de même lu dans des bouquins pas trop fantaisistes que ce principe de "pas de chiffre en tête d'un identificateur" facilitait l'analyse.
Ça dépend de comment tu fais l'analyse. Si tu te sers de lex, il n'y a aucune différence. Si tu l'écris à la main, ça facilite, effectivement.
La même chose vaut à l'envers. J'ai connu pas mal de langages où les chiffres hexadécimal s'écrivaient « 1234H », avec un H à la fin. C'est plus difficile à traiter si tu écris l'analyseur lexique à la main, mais ce n'est pas la mer à boire non plus. Et avec lex... N'empêche que le C n'a pas adopté cette notation on ne peut plus intuitive.
Depuis cette époque, il est clair que les écrivains de compilateurs ont des problèmes bien plus difficiles à résoudre que celui-ci, de toute façon.
Mais non, mais non. Export, c'est rien à côté :-).
-- James Kanze GABI Software mailto: Conseils en informatique orientée objet/ http://www.gabi-soft.fr Beratung in objektorientierter Datenverarbeitung 11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16
"Alain Naigeon" <anaigeon@free.fr> wrote in message
news:<3fd8e88c$0$29082$636a55ce@news.free.fr>...
<kanze@gabi-soft.fr> a écrit dans le message news:
d6652001.0312110151.6a012c9f@posting.google.com...
Fabien LE LEZ <gramster@gramster.com> wrote in message
news:<uq0ftvsbmriee6ekhtcb4p3s7slg7360j5@4ax.com>...
On Wed, 10 Dec 2003 12:16:03 +0100, Serge Paccalin
<sp@mailclub.no.spam.net.invalid> wrote:
Si on tolérait les identifiants commençant par un chiffre, 0xff
en serait un valide.
Idem avec 42ul.
Ce qui ne pose pas de problème particulier pour le compilateur : si
ça peut être une constante numérique, c'est une constante numérique
-- sinon, c'est un identificateur.
Il n'empêche, j'avais tout de même lu dans des bouquins pas trop
fantaisistes que ce principe de "pas de chiffre en tête d'un
identificateur" facilitait l'analyse.
Ça dépend de comment tu fais l'analyse. Si tu te sers de lex, il n'y a
aucune différence. Si tu l'écris à la main, ça facilite, effectivement.
La même chose vaut à l'envers. J'ai connu pas mal de langages où les
chiffres hexadécimal s'écrivaient « 1234H », avec un H à la fin. C'est
plus difficile à traiter si tu écris l'analyseur lexique à la main, mais
ce n'est pas la mer à boire non plus. Et avec lex... N'empêche que le C
n'a pas adopté cette notation on ne peut plus intuitive.
Depuis cette époque, il est clair que les écrivains de compilateurs
ont des problèmes bien plus difficiles à résoudre que celui-ci, de
toute façon.
Mais non, mais non. Export, c'est rien à côté :-).
--
James Kanze GABI Software mailto:kanze@gabi-soft.fr
Conseils en informatique orientée objet/ http://www.gabi-soft.fr
Beratung in objektorientierter Datenverarbeitung
11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16
"Alain Naigeon" wrote in message news:<3fd8e88c$0$29082$...
a écrit dans le message news:
Fabien LE LEZ wrote in message news:...
On Wed, 10 Dec 2003 12:16:03 +0100, Serge Paccalin wrote:
Si on tolérait les identifiants commençant par un chiffre, 0xff en serait un valide.
Idem avec 42ul.
Ce qui ne pose pas de problème particulier pour le compilateur : si ça peut être une constante numérique, c'est une constante numérique -- sinon, c'est un identificateur.
Il n'empêche, j'avais tout de même lu dans des bouquins pas trop fantaisistes que ce principe de "pas de chiffre en tête d'un identificateur" facilitait l'analyse.
Ça dépend de comment tu fais l'analyse. Si tu te sers de lex, il n'y a aucune différence. Si tu l'écris à la main, ça facilite, effectivement.
La même chose vaut à l'envers. J'ai connu pas mal de langages où les chiffres hexadécimal s'écrivaient « 1234H », avec un H à la fin. C'est plus difficile à traiter si tu écris l'analyseur lexique à la main, mais ce n'est pas la mer à boire non plus. Et avec lex... N'empêche que le C n'a pas adopté cette notation on ne peut plus intuitive.
Depuis cette époque, il est clair que les écrivains de compilateurs ont des problèmes bien plus difficiles à résoudre que celui-ci, de toute façon.
Mais non, mais non. Export, c'est rien à côté :-).
-- James Kanze GABI Software mailto: Conseils en informatique orientée objet/ http://www.gabi-soft.fr Beratung in objektorientierter Datenverarbeitung 11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16
Gabriel Dos Reis
writes:
| Fabien LE LEZ wrote in message | news:... | > On 11 Dec 2003 01:51:25 -0800, wrote: | | > >Ce qui ne pose pas de problème particulier pour le compilateur : si | > >ça peut être une constante numérique, c'est une constante numérique | > >-- sinon, c'est un identificateur. | | > Mais certains compilos acceptent des extensions. Du coup, 153vx serait | > considéré comme un identificateur par un compilo, et comme une | > constante numérique de type "vx" par un autre. | | Une extension suppose une exploitation d'un comportement indéfini.
Pas forcément.
Cela peut être n'importe quelle violation d'une règle diagnostiquable de la norme ; il suffit que l'implémentation émette un diagnostic.
| Un | compilateur qui n'émet pas de message d'erreur pour 123vx n'est pas | conforme.
La norme ne définit pas ce qu'est un message d'erreur.
-- Gaby
kanze@gabi-soft.fr writes:
| Fabien LE LEZ <gramster@gramster.com> wrote in message
| news:<skvgtvkttt3ilid99355gk22n7o2f4rkkv@4ax.com>...
| > On 11 Dec 2003 01:51:25 -0800, kanze@gabi-soft.fr wrote:
|
| > >Ce qui ne pose pas de problème particulier pour le compilateur : si
| > >ça peut être une constante numérique, c'est une constante numérique
| > >-- sinon, c'est un identificateur.
|
| > Mais certains compilos acceptent des extensions. Du coup, 153vx serait
| > considéré comme un identificateur par un compilo, et comme une
| > constante numérique de type "vx" par un autre.
|
| Une extension suppose une exploitation d'un comportement indéfini.
Pas forcément.
Cela peut être n'importe quelle violation d'une règle diagnostiquable
de la norme ; il suffit que l'implémentation émette un diagnostic.
| Un
| compilateur qui n'émet pas de message d'erreur pour 123vx n'est pas
| conforme.
La norme ne définit pas ce qu'est un message d'erreur.
| Fabien LE LEZ wrote in message | news:... | > On 11 Dec 2003 01:51:25 -0800, wrote: | | > >Ce qui ne pose pas de problème particulier pour le compilateur : si | > >ça peut être une constante numérique, c'est une constante numérique | > >-- sinon, c'est un identificateur. | | > Mais certains compilos acceptent des extensions. Du coup, 153vx serait | > considéré comme un identificateur par un compilo, et comme une | > constante numérique de type "vx" par un autre. | | Une extension suppose une exploitation d'un comportement indéfini.
Pas forcément.
Cela peut être n'importe quelle violation d'une règle diagnostiquable de la norme ; il suffit que l'implémentation émette un diagnostic.
| Un | compilateur qui n'émet pas de message d'erreur pour 123vx n'est pas | conforme.
La norme ne définit pas ce qu'est un message d'erreur.
-- Gaby
Alexis Guillaume
Logiquement un nom n'a pas de raison de commencer par un chiffre. Connais-tu un seul nom de variable qui mériterait de commencer par un chiffre ?
Hypothèse : Peut-être que si de tels noms étaient possibles depuis toujours dans d'autres langages que postscript, COBOL ou le shell-script tout simplement, on aurait plein d'exemples où ce serait utile. À force d'être habitué à cette limitation, on finit par la trouver absolument naturelle, on est en quelque sorte formaté.
Nous programmeurs C++ sommes peut-être en train d'analyser les ombres sur la paroi d'une caverne et nous ne voyons pas la lumière des noms de variables qui commencent par un chiffre. ;o)
-- Alexis Guillaume <http://cowsoft.free.fr> : ressources universitaires en vrac
"Il est minuit. La pluie fouette les vitres."
Logiquement un nom n'a pas de raison de commencer par un chiffre.
Connais-tu un seul nom de variable qui mériterait de commencer par un
chiffre ?
Hypothèse :
Peut-être que si de tels noms étaient possibles depuis toujours dans
d'autres langages que postscript, COBOL ou le shell-script tout
simplement, on aurait plein d'exemples où ce serait utile. À force
d'être habitué à cette limitation, on finit par la trouver absolument
naturelle, on est en quelque sorte formaté.
Nous programmeurs C++ sommes peut-être en train d'analyser les ombres
sur la paroi d'une caverne et nous ne voyons pas la lumière des noms de
variables qui commencent par un chiffre. ;o)
--
Alexis Guillaume
<http://cowsoft.free.fr> : ressources universitaires en vrac
Logiquement un nom n'a pas de raison de commencer par un chiffre. Connais-tu un seul nom de variable qui mériterait de commencer par un chiffre ?
Hypothèse : Peut-être que si de tels noms étaient possibles depuis toujours dans d'autres langages que postscript, COBOL ou le shell-script tout simplement, on aurait plein d'exemples où ce serait utile. À force d'être habitué à cette limitation, on finit par la trouver absolument naturelle, on est en quelque sorte formaté.
Nous programmeurs C++ sommes peut-être en train d'analyser les ombres sur la paroi d'une caverne et nous ne voyons pas la lumière des noms de variables qui commencent par un chiffre. ;o)
-- Alexis Guillaume <http://cowsoft.free.fr> : ressources universitaires en vrac
"Il est minuit. La pluie fouette les vitres."
Christophe de VIENNE
Alexis Guillaume wrote:
Nous programmeurs C++ sommes peut-être en train d'analyser les ombres sur la paroi d'une caverne et nous ne voyons pas la lumière des noms de variables qui commencent par un chiffre. ;o)
Programmeurs, brisez vos chaînes :-)
Christophe
Alexis Guillaume wrote:
Nous programmeurs C++ sommes peut-être en train d'analyser les ombres
sur la paroi d'une caverne et nous ne voyons pas la lumière des noms de
variables qui commencent par un chiffre. ;o)
Nous programmeurs C++ sommes peut-être en train d'analyser les ombres sur la paroi d'une caverne et nous ne voyons pas la lumière des noms de variables qui commencent par un chiffre. ;o)
Programmeurs, brisez vos chaînes :-)
Christophe
Serge Paccalin
Le jeudi 11 décembre 2003 à 10:47:29, Jean-Marc Molina a écrit dans fr.comp.lang.c++ :
Logiquement un nom n'a pas de raison de commencer par un chiffre. Connais-tu un seul nom de variable qui mériterait de commencer par un chiffre ?
Oui, pourquoi pas ? Des noms en 1er, 2nd, 3e...
-- ___________ 2003-12-12 22:28:29 _/ _ _`_`_`_) Serge PACCALIN -- sp ad mailclub.net _L_) Il faut donc que les hommes commencent -'(__) par n'être pas fanatiques pour mériter _/___(_) la tolérance. -- Voltaire, 1763
Le jeudi 11 décembre 2003 à 10:47:29, Jean-Marc Molina a écrit dans
fr.comp.lang.c++ :
Logiquement un nom n'a pas de raison de commencer par un chiffre.
Connais-tu un seul nom de variable qui mériterait de commencer par un
chiffre ?
Oui, pourquoi pas ? Des noms en 1er, 2nd, 3e...
--
___________ 2003-12-12 22:28:29
_/ _ _`_`_`_) Serge PACCALIN -- sp ad mailclub.net
_L_) Il faut donc que les hommes commencent
-'(__) par n'être pas fanatiques pour mériter
_/___(_) la tolérance. -- Voltaire, 1763
Le jeudi 11 décembre 2003 à 10:47:29, Jean-Marc Molina a écrit dans fr.comp.lang.c++ :
Logiquement un nom n'a pas de raison de commencer par un chiffre. Connais-tu un seul nom de variable qui mériterait de commencer par un chiffre ?
Oui, pourquoi pas ? Des noms en 1er, 2nd, 3e...
-- ___________ 2003-12-12 22:28:29 _/ _ _`_`_`_) Serge PACCALIN -- sp ad mailclub.net _L_) Il faut donc que les hommes commencent -'(__) par n'être pas fanatiques pour mériter _/___(_) la tolérance. -- Voltaire, 1763
Gabriel Dos Reis
"Jean-Marc Molina" writes:
| Logiquement un nom n'a pas de raison de commencer par un chiffre.
« Logiquement » selon quelle logique ?
| Connais-tu un seul nom de variable qui mériterait de commencer par un | chiffre ?
WorldCompany::Abstract::Driver* 3d_driver = new ....