Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
Aide pour remplacer "stricmp"
Envoyé par: herui

Bonjour,

Je cherche à porter sous linux un porgramme en CPP.
Le seul probleme est que la fonction stricmp n'est pas reconnu.
Je voudrais savoir s'il y a un équivalent.. ou une bibliothèque existante.
la page est ici : [mcntp.sourceforge.net]

Merci pour votre aide.

Poste le Saturday 13 January 2007 14:48:24
Répondre     Citer    
Re: Aide pour remplacer "stricmp"

Telecharges [sourceforge.net] et cherches y la fonction.

Sinon, Google Codesearch [www.google.com] te suggère d'utiliser strcasecmp oui bien te propose d'autres solutions.

Et je dois reconnaître que ta question m'a agacé.. :-( Pourquoi n'as tu pas pris quelques secondes pour chercher? Nous prends tu pour des larbins (ou pire)?

Avant de poser ta prochaine question, passe au moins cinq minutes à chercher sur le Web et dans la documentation: STFW & RTFM

----

Basile STARYNKEVITCH

Membre de l'APRIL « promouvoir et défendre le logiciel libre » - adhérez vous aussi à l'APRIL!

Projet logiciel libre: RefPerSys

Poste le Saturday 13 January 2007 15:24:51
Répondre     Citer    
Re: Aide pour remplacer "stricmp"
Envoyé par: Sve@r

Citation
herui
Bonjour,

Je cherche à porter sous linux un porgramme en
CPP.
Le seul probleme est que la fonction stricmp n'est
pas reconnu.
Je voudrais savoir s'il y a un équivalent.. ou une
bibliothèque existante.
la page est ici :

Merci pour votre aide.
Basile n'a pas tord. C'est franchement pas compliqué de réécrire "strcmp()" (ça fait partie des exercices standard qu'on donne aux élèves) alors y adapter un petit artifice pour ne pas prendre la casse en compte c'est bateau !!!

Au pire tu copies tes 2 chaînes dans 2 zones tampon en les convertissant toutes les 2 en minuscules (tolower()) puis tu appelles strcmp() !!!


L'homme qui murmurait à l'oreille des pingouins
[fr.lang.free.fr]

Poste le Saturday 13 January 2007 20:18:14
Répondre     Citer    
Re: Aide pour remplacer "stricmp"
Envoyé par: abgech

Citation
Sve@r
...
C'est franchement pas compliqué de réécrire "strcmp()" (ça fait partie des exercices standard qu'on donne aux élèves) alors y adapter un petit artifice pour ne pas prendre la casse en compte c'est bateau !!!
...

Je pense que c'est justement un étudiant qui a envie que l'on lui fasse son exercice !

..................
Parce qu'il avait une clôture à utiliser, l'homme invente la propriété privée. --- F. Cavanna

Poste le Sunday 14 January 2007 11:32:30
Répondre     Citer    
Re: Aide pour remplacer "stricmp"
Envoyé par: herui

Bonjour,
Merci pour vos réponses.
Et désolé si ma question est à ce point "débutante". J'ai cherché sur google et je suis tombé sur la page man mais ca ne m'a pas avancé. D'autre part je ne connaissais pas googleCode, merci du lien, mais je ne vois pas trop comment ça pourrai m'aider..

Citation

C'est franchement pas compliqué de réécrire "strcmp()"

J'ai récrit le code avec strcmp, mais j'ai une autre erreur (ld status end with code 1...)

Je ne vous prends pas pour des "larbins", je suis juste moins doué que vous en programmation, et désolé si je ne comprend pas tout ce que vous dites....

Poste le Sunday 14 January 2007 15:03:40
Répondre     Citer    
Re: Aide pour remplacer "stricmp"
Envoyé par: Fabien26

Oui en effet la fonction stricmp a été remplacée pas strcasecmp ...
j'aurais bien aimé l'apprendre via un message type avertissement précisant que j'utilisais une fonction "depreciated" à la compilation ...

plus sympa que de devoir chercher sur les forum en tous genres ...

Pour ce qui est de refaire soit même cette fonction, je dirais à quoi ça sert de réinventer la roue ... surtout si elle existe déjà en version libre ...

PS: c'est comme pour cout << qui est devenu std::cout << ...

bon pour ne pas avoir à rechercher toutes les occurrences dans mon programme j'ai trouvé une astuce, ajouter:

using namespace std;

au début de mon fichiers d'include général !

Poste le Thursday 27 December 2007 23:49:52
Répondre     Citer    
Re: Aide pour remplacer "stricmp"
Envoyé par: gulum

Citation
Sve@r
herui a écrit :Bonjour,

Je cherche à porter sous linux un porgramme en
CPP.
Le seul probleme est que la fonction stricmp
n'est
pas reconnu.
Je voudrais savoir s'il y a un équivalent.. ou
une
bibliothèque existante.
la page est ici :

Merci pour votre aide.
Basile n'a pas tord. C'est franchement pas
compliqué de réécrire "strcmp()" (ça fait partie
des exercices standard qu'on donne aux élèves)
alors y adapter un petit artifice pour ne pas
prendre la casse en compte c'est bateau !!!

Au pire tu copies tes 2 chaînes dans 2 zones
tampon en les convertissant toutes les 2 en
minuscules (tolower()) puis tu appelles strcmp()
!!!


L'homme qui murmurait à l'oreille des pingouins

C'est pas compliqué mais idiot de réécrire cette fonction.
Pkoi refaire une fonction qui a été testé par des milliers de personnes et qui est super optimisée.
Il ferait forcement pire et toi aussi.
Tu fais ton malin, mais si tu avais été plus doué, tu lui aurais proposé strcasecmp.


Poste le Wednesday 2 January 2008 10:09:18
Répondre     Citer    
Re: Aide pour remplacer "stricmp"
Envoyé par: abgech

C'est effectivement pas compliqué d'écrire cette fonction. Mais c'est de dire que c'est idiot qui est idiot :-)). C'est, au contraire extrêmement formatif. Après tout, l'un des meilleurs ouvrage que je connaisse pour apprendre le C (le K&R bien sûr) ne propose-t-il pas, à titre d'exercice, de refaire un certain nombre de fonction de la librairie C ?

Alors parce que c'est le début de l'année, et pour comme étrennes pour les étudiants qui auraient à réaliser cette fonction:


int spstricmp(char a[], char b[])
{
        int         dif = 0;~
~
while ( (*a || *b) && !(dif = toupper(*(a++)) - toupper(*(b++)) ))
      ;
return(dif);


Poste le Wednesday 2 January 2008 18:19:46
Répondre     Citer    
Re: Aide pour remplacer "stricmp"
Envoyé par: abgech

Calamité !

Il manque un } en fin de fonction.

Un variante : remplacer toupper() par tolower(), c'est une question de goût et de couleur :-)).

Poste le Wednesday 2 January 2008 18:21:10
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
Aide pour remplacer "stricmp"
Pour poser vos questions sur les scripts shell, le Perl, le C, etc... Attention : nous ne sommes pas des spécialistes du dev, ce forum est juste pour de petites aides ponctuelles concernant le développement et les outils de développement.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons