Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

regexp en C

57 réponses
Avatar
Arno
Bonjour,

Voila je veut utiliser regcomp et regexec pour faire des comparaisons. J'ai
donc voulu faire un petit test pour commencer mais cella ne fonctionne pas.
Lors de l'execution, il me dit que les deux chaines ne sont pas les mêmes,
quelqu'un à une idée ?

#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <regex.h>

int main (int argc, char **argv)
{
regex_t regexp;

if (!regcomp(&regexp, "192.168.0.22", REG_ICASE))
{
if (regexec(&regexp, "192.168.0.22", 0, NULL, 0))
printf("Match...\n");
else
printf("NO Match...\n");
}
return 0;
}

Merci.

--
Arno - Pour le mail : http://cerbermail.com/?P5oJnDlxNt

10 réponses

2 3 4 5 6
Avatar
Thierry B.
Richard Delorme wrote:

opendir(), closedir(), etc. est donc fr.comp.os.unix.programmation,
parce que, c'est là que la « question sera mieux honorée.»



#include <drosophiles.h>

fcou.programmation existe vraiment ?




--
Thierry Boudet http://tth.vaboofer.com/moi/cv.html

Avatar
Richard Delorme

Il faudrait déjà que "fr.comp.os.unix.programmation" existât pour
questionner les experts unix .


En effet c'est fr.comp.os.unix tout court. Extrait de la charte :

« Le groupe fr.comp.os.unix est destiné aux discussions, questions et
réponses concernant les systèmes d'exploitation de la famille UNIX et
dérivés (AIX, Digital Unix, HP-UX, Solaris, etc.) toutes plateformes
matérielles confondues, notamment :

[...]
- les aspects spécifiques de la programmation sur ces systèmes »


A mon avis, il est faux de croire que opendir() est plus standard que
SetCurrentDirectory(), même si le premier est défini par un comité de
normalisation et le dernier par une entreprise privée. On oublie trop
que Windows représente 95% du marché informatique et constitue un
standard de fait. On oublie encore plus l'importance des systèmes
embarqués (sans doute un ordre de grandeur plus grand que le marché
informatique, je n'ai plus les chiffres en tête) et où le langage C est
encore abondamment utilisé et où la notion de répertoire a sans doute
peu de sens.


Je ne comprends pas le rapport entre le fait que sur l'embarqué "où la
notion de répertoire a sans doute peu de sens", et le pauvre débutant qui pose une question sur opendir et
qui se fait gifler par un hors-norme-donc-hors-charte abusif.


Pourtant c'est très simple.
La personne qui fait de l'embarqué ne comprend pas la question sur les
répertoires, elle se sent donc bête. Comme bête et méchant vont
ensemble, elle devient méchante et éjecte un peut rudement le malheureux
débutant qui ne savait même pas qu'il existait du C en norme et du C
hors norme.
Voilà, c'est de la psychologie de base.

Sinon, je suis bien d'accord qu'un peu de tolérance ferait du bien.
Souvent, il arrive que quelqu'un se fasse gronder vilainement pour avoir
posté un code contenant des fonctions non standards, alors que son
erreur se situe en fait sur une portion respectant la norme. Certaines
réactions épidermiques sont en effet trop rapides.

A mon avis le meilleur comportement quand on ne connaît pas une réponse
est de s'abtenir de répondre, ou si l'on connaît un groupe plus adéquat
d'inviter poliment la personne à reposer la question là-bas, mais très
rarement d'éjecter le posteur hors-sujet.

--
Richard


Avatar
Jean-Marc Bourguet
Richard Delorme writes:


Si la charte est bien ce qui est désigné sous le terme de
"conseils d'utilisation" et publié ici 2 fois par mois, moi
non plus je n'y ai vu aucun des mots "norme", "standard",
"ANSI", "ISO"


Il est quand même fait mention du langage C, or ce qui définit le
langage C est la(les) norme(s) du langage.


Il n'y est fait mention nulle part qu'il faille se restreindre au
langage C tel que definit dans la norme.

"Ce groupe est dédié aux discussions autour du langage C."

A+

--
Jean-Marc
FAQ de fclc: http://www.isty-info.uvsq.fr/~rumeau/fclc
Site de usenet-fr: http://www.usenet-fr.news.eu.org


Avatar
Jean-Marc Bourguet
Richard Delorme writes:

En fait, les API propre à un OS sont clairement exclus par la charte. Si
elle mentionne uniquement l'exemple des API windows, cela ne veut pas dire
qu'elle autorise les extensions POSIX que l'on peut voir comme des API Unix.


Il n'est pas exclu que les discussions aient lieu ici, il est
recommande qu'elles aient lieu ailleurs parce qu'il y a des ailleurs
plus adequats.

--
Jean-Marc
FAQ de fclc: http://www.isty-info.uvsq.fr/~rumeau/fclc
Site de usenet-fr: http://www.usenet-fr.news.eu.org

Avatar
K. Ahausse
"Richard Delorme" a écrit dans le message de
news:412f068d$0$317$

Il faudrait déjà que "fr.comp.os.unix.programmation" existât pour
questionner les experts unix .


En effet c'est fr.comp.os.unix tout court. Extrait de la charte :

« Le groupe fr.comp.os.unix est destiné aux discussions, questions et
réponses concernant les systèmes d'exploitation de la famille UNIX et
dérivés (AIX, Digital Unix, HP-UX, Solaris, etc.) toutes plateformes
matérielles confondues, notamment :

[...]
- les aspects spécifiques de la programmation sur ces systèmes »


A mon avis, il est faux de croire que opendir() est plus standard que
SetCurrentDirectory(), même si le premier est défini par un comité de
normalisation et le dernier par une entreprise privée. On oublie trop
que Windows représente 95% du marché informatique et constitue un
standard de fait. On oublie encore plus l'importance des systèmes
embarqués (sans doute un ordre de grandeur plus grand que le marché
informatique, je n'ai plus les chiffres en tête) et où le langage C est
encore abondamment utilisé et où la notion de répertoire a sans doute
peu de sens.


Je ne comprends pas le rapport entre le fait que sur l'embarqué "où la
notion de répertoire a sans doute peu de sens", et le pauvre débutant
qui pose une question sur opendir et


qui se fait gifler par un hors-norme-donc-hors-charte abusif.


Pourtant c'est très simple.
La personne qui fait de l'embarqué ne comprend pas la question sur les
répertoires, elle se sent donc bête. Comme bête et méchant vont
ensemble, elle devient méchante et éjecte un peut rudement le malheureux
débutant qui ne savait même pas qu'il existait du C en norme et du C
hors norme.
Voilà, c'est de la psychologie de base.

Sinon, je suis bien d'accord qu'un peu de tolérance ferait du bien.
Souvent, il arrive que quelqu'un se fasse gronder vilainement pour avoir
posté un code contenant des fonctions non standards, alors que son
erreur se situe en fait sur une portion respectant la norme. Certaines
réactions épidermiques sont en effet trop rapides.

A mon avis le meilleur comportement quand on ne connaît pas une réponse
est de s'abtenir de répondre, ou si l'on connaît un groupe plus adéquat
d'inviter poliment la personne à reposer la question là-bas, mais très
rarement d'éjecter le posteur hors-sujet.


Houaou, superbe réponse.
Sincèrement, merci.



Avatar
Richard Delorme
Richard Delorme writes:

Si la charte est bien ce qui est désigné sous le terme de
"conseils d'utilisation" et publié ici 2 fois par mois, moi
non plus je n'y ai vu aucun des mots "norme", "standard",
"ANSI", "ISO"


Il est quand même fait mention du langage C, or ce qui définit le
langage C est la(les) norme(s) du langage.


Il n'y est fait mention nulle part qu'il faille se restreindre au
langage C tel que definit dans la norme.



La question est de savoir s'il existe un autre langage C que celui de la
norme. Je n'ai pas de réponse définitive...

Au moins, la restriction au C ISO est écrite clairement dans la FAQ :
http://www.isty.uvsq.fr/~rumeau/fclc/fclc002.html#q_7

« Ainsi que le stipule la charte du groupe, les seules questions
traitées sur fr.comp.lang.c portent sur le C ISO. Pour ce qui a trait
avec la programmation Be, DOS, Mac, Unix, Windows, il y a des forums
dédiés. »

Néanmoins, j'ai l'impression que la charte est ambiguë. On dirait
qu'elle contient des vestiges de la charte précédente.

Au départ on avait :

«
---------------------------------------------------------
Nom : fr.comp.lang.c
Statut : non modéré
Description : Langages de programmation C et assimiles
Date de création : 16/12/96
---------------------------------------------------------

1 - Charte du groupe :
----------------------

Ce groupe est dédié aux discussions autour du langage C
et de ses dérivés, comme C++. En particulier, il est recommandé
que les discussions sur les différentes API des éditeurs de compilateurs
pour MS-Windows (MFC, OWL) se déroulent dans fr.comp.lang.c,
ainsi que celles sur les environnements de compilation C et C++
(utilisation de compilateurs par exemple).
[...]»

Puis, c'est devenu :

«
---------------------------------------------------------
Nom : fr.comp.lang.c
Statut : non modéré
Description : Langages de programmation C et assimiles
Date de création : 16/12/96
---------------------------------------------------------

1 - Charte du groupe :
----------------------

Ce groupe est dédié aux discussions autour du langage C.

En particulier, il est recommandé que les discussions
sur les différentes API, librairies et environnements de
compilation des éditeurs de compilateurs pour MS-Windows
se déroulent dans fr.comp.ms-windows.programmation.

De même, le langage C++ a maintenant son groupe à lui : fr.comp.lang.c++.
[...]»

La description « Langages de programmation C et assimiles » et
l'expression « autour du langage C » avaient vraiment un sens au départ
dans la mesure où les langages dérivées et les diverses bibliothèques
étaient les bien venus. Ensuite on a voulu restreindre les domaines
d'application du groupe, mais on a oublié (ou non?) de reformuler
certaines phrases. Quels sont désormais ces langages assimilés au
langage C ? Que signifie autour du langage C ?

Quoiqu'il en soit, soit il faut reformuler la charte du groupe, soit il
faut changer la FAQ.

--
Richard



Avatar
Jean-Marc Bourguet
Richard Delorme writes:

Richard Delorme writes:

Si la charte est bien ce qui est désigné sous le terme de
"conseils d'utilisation" et publié ici 2 fois par mois, moi
non plus je n'y ai vu aucun des mots "norme", "standard",
"ANSI", "ISO"


Il est quand même fait mention du langage C, or ce qui définit le
langage C est la(les) norme(s) du langage.
Il n'y est fait mention nulle part qu'il faille se restreindre au

langage C tel que definit dans la norme.



La question est de savoir s'il existe un autre langage C que celui
de la norme. Je n'ai pas de réponse définitive...


Celui de quelle norme? J'en vois deja 3 et on va bien commencer un
moment donne ou l'autre a parler de la prochaine norme. Celui de K&R
est different ausi. Celui de gcc aussi.

Au moins, la restriction au C ISO est écrite clairement dans la FAQ:
http://www.isty.uvsq.fr/~rumeau/fclc/fclc002.html#q_7

« Ainsi que le stipule la charte du groupe, les seules questions traitées
sur fr.comp.lang.c portent sur le C ISO. Pour ce qui a trait avec la
programmation Be, DOS, Mac, Unix, Windows, il y a des forums dédiés. »


Je ne vois pas ou la charte reduit le champs aux seules questions sur
le C ISO. La FAQ est donc en erreur comme tu le constates toi meme.

Néanmoins, j'ai l'impression que la charte est ambiguë. On dirait
qu'elle contient des vestiges de la charte précédente.

Au départ on avait :

«
---------------------------------------------------------
Nom : fr.comp.lang.c
Statut : non modéré
Description : Langages de programmation C et assimiles
Date de création : 16/12/96
---------------------------------------------------------

1 - Charte du groupe :
----------------------

Ce groupe est dédié aux discussions autour du langage C
et de ses dérivés, comme C++. En particulier, il est recommandé
que les discussions sur les différentes API des éditeurs de compilateurs
pour MS-Windows (MFC, OWL) se déroulent dans fr.comp.lang.c,
ainsi que celles sur les environnements de compilation C et C++
(utilisation de compilateurs par exemple).
[...]»

Puis, c'est devenu :

«
---------------------------------------------------------
Nom : fr.comp.lang.c
Statut : non modéré
Description : Langages de programmation C et assimiles
Date de création : 16/12/96
---------------------------------------------------------

1 - Charte du groupe :
----------------------

Ce groupe est dédié aux discussions autour du langage C.

En particulier, il est recommandé que les discussions
sur les différentes API, librairies et environnements de
compilation des éditeurs de compilateurs pour MS-Windows
se déroulent dans fr.comp.ms-windows.programmation.

De même, le langage C++ a maintenant son groupe à lui : fr.comp.lang.c++.
[...]»

La description « Langages de programmation C et assimiles » et
l'expression « autour du langage C » avaient vraiment un sens au
départ dans la mesure où les langages dérivées et les diverses
bibliothèques étaient les bien venus. Ensuite on a voulu restreindre
les domaines d'application du groupe, mais on a oublié (ou non?) de
reformuler certaines phrases.


Je ne pense pas qu'on ait voulu restreindre le champs total,
simplement signifier qu'il y avait des groupes plus adapte pour
certains sujets. Le
Quels sont désormais ces langages assimilés au langage C ?


SystemC, Objective-C? C# est vraiment trop loin pour que ce groupe
soit implique.

Que signifie autour du langage C ?

Quoiqu'il en soit, soit il faut reformuler la charte du groupe


Passe par fufe.

soit il faut changer la FAQ.


C'est plus simple.

A+

--
Jean-Marc
FAQ de fclc: http://www.isty-info.uvsq.fr/~rumeau/fclc
Site de usenet-fr: http://www.usenet-fr.news.eu.org




Avatar
Thomas Labourdette
Le 27-08-2004, Richard Delorme a écrit :

Puis, c'est devenu :

«
Nom : fr.comp.lang.c
Statut : non modéré
Description : Langages de programmation C et assimiles
Date de création : 16/12/96

1 - Charte du groupe :

Ce groupe est dédié aux discussions autour du langage C.

En particulier, il est recommandé que les discussions
sur les différentes API, librairies et environnements de
compilation des éditeurs de compilateurs pour MS-Windows
se déroulent dans fr.comp.ms-windows.programmation.


Ce qui exclu clairement toutes questions concernants l'API
Ms-Windows... Mais non les questions concernant Posix ou la libc sous
les différents Unix ou autres OS du moment que :
"On trouvera par exemple dans fr.comp.lang.c :
* des questions précises résolues éventuellement par les usagers du
groupe. Questions issues soit de personnes compétentes visant à
résoudre des problèmes très pointus, mais aussi des questions de
débutants visant à améliorer ou approfondir leurs connaissances."


Il est dit aussi :
"On trouvera par exemple dans fr.comp.lang.c :
* des échanges de point de vue, de techniques de programmation, des
sources, des commentaires."
"* des informations générales sur les langages de programmation (adresses
de sites, critique de produits commerciaux)."

Ce qui peut conduire à des discussions sur les différentes API existantes.


@+
--
Chantal ANGUE-DANMAFOUNE
Quel mot compose commencant par "H" designe une creche accueillant
les enfants pour une duree limitee ?
Un hospice.
(Les bavures du maillon faible.)

Avatar
Emmanuel Delahaye
K. Ahausse wrote on 26/08/04 :
La charte ne mentionne pas de norme C, mais seules les questions sur la
norme C seraient tolérables.

Il y a comme un bug, dans la charte
Si les gens lisent la norme C de la même façon qu'ils lisent la charte, ça
promet ...


Essayons d'être clair.

La charte dit que le sujet principal est 'Le Langage C'.

Comment est défini le langage C ? Par une norme internationale de type
ISO. Cette norme constitue le noyau dur du langage (The Core) composé
d'une syntaxe, d'une grammaire et d'une bibliothèque de fonctions.

Elle a l'avantage de définir un langage commun et portable
indépendemment de la machine. Tout code posté ici respectant cette
norme peut être compilé et testé par n'importe quel intervenant
disposant d'une machine avec une compilateur.

D'autre part, il existe de nombreuses extensions au langage C, qui sont

- Des bibliothèques plus ou moins portables
- Des fonctions systèmes avec interface C (POSIX ou non)
- L'assembleur inline
- Des mots clés et types spécifiques (interrupt, far, int64 etc.)

Ces extensions ne font pas partie de la définition du langage C et ne
peuvent donc pas être discutées ici, surtout que dans la plupart des
cas, il existe un forum spécialisé.

Enfin, nous (professionels) considérons qu'il est important de bien
distinguer le noyau du langage de ses extensions, afin d'être capable
d'écrire du code le plus portable possible. Nous n'avons pas
l'intention de promouvoir des pratiques menant à la non-portabilité ou
à l'ecriture de code non réutilisable ou immaintenable.

--
Emmanuel
The C-FAQ: http://www.eskimo.com/~scs/C-faq/faq.html
The C-library: http://www.dinkumware.com/refxc.html

"C is a sharp tool"

Avatar
Laurent Wacrenier
Emmanuel Delahaye écrit:
Elle a l'avantage de définir un langage commun et portable
indépendemment de la machine. Tout code posté ici respectant cette
norme peut être compilé et testé par n'importe quel intervenant
disposant d'une machine avec une compilateur.


Autant faire un programme qui lit les articles, les compile et répond
le code d'erreur tout seul :-)

2 3 4 5 6