Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : A quoi correspond le : (seul pas ::) [ Windows / System ] (Sim 2005)

samedi 7 juillet 2007 à 21:58:47 | A quoi correspond le : (seul pas ::)

Sim 2005

Dans une source j'ai trouvé l'opérateur : . A quoi cela correspond-il (est-ce bien un opérateur).
Voici le lien vers la source : http://www.cppfrance.com/code.aspx?ID=25450
et le morceau de code concerné :
Je ne vois pas comment fonctionne cette zone (surlignée en gras)... Elle ne fait pas non plus parti d'un switch case qui aurait pu justifier l'utilisation du :.

int PrepareDll()
{
  /* du code ...... */
  if(!pStart) goto relDll;
  pStop = (pSTOP) GetProcAddress(hdll, "Stop");
  if(pStop) return 1;
relDll: FreeLibrary(hdll);
delDll:
  DeleteFile(szdll);
  return 0;

}

samedi 7 juillet 2007 à 22:03:35 | Re : A quoi correspond le : (seul pas ::)

luhtor

J'ai jamais utilisé ca en C/C++, mais c'est surement un label. Cad un point d'arrivé pour un "goto", une fonction qui n'a plus de raison d'etre utilisé sauf pour faire du code illisible.

goto va_ici;
...
va_ici :

samedi 7 juillet 2007 à 22:10:49 | Re : A quoi correspond le : (seul pas ::)

Sim 2005

Je pense mais étant donné que je n'ai vu aucun goto ça m'a paru bizarre. J'ai uniquement vu ça dans les sources de BruNews.

samedi 7 juillet 2007 à 22:11:33 | Re : A quoi correspond le : (seul pas ::)

Sim 2005

Réponse acceptée !
A ben si finalement ils y sont mais plus haut.... J'avais pas vu.

samedi 7 juillet 2007 à 22:20:19 | Re : A quoi correspond le : (seul pas ::)

SAKingdom

Membre Club
Mon but ici n'est pas de démarrer un autre débat sur les goto.

"une fonction qui n'a plus de raison d'etre..."
Est encore utilisé pour les sorties de boucles. Exemple:
while(1) {
    while(1) {
       ...
       if(x) goto fin_boucle;
    }
    ...
}
fin_boucle:

".. utilisé sauf pour faire du code illisible"
Dans certain cas, l'utilisation des goto peut générer un code beaucoup plus lisible qu'un enchainement de 10 if par exemple.
if(x) {
    ...
    if(y) {
        ...
       if(z) {
          ...
          if(x1) {
             ... // <- Ça commence à faire beaucoup de tab ici
          }
       }
    }
}
        


C++ (@++)


samedi 7 juillet 2007 à 22:48:32 | Re : A quoi correspond le : (seul pas ::)

luhtor

Un enchainement de 10 if ne doit pas arriver. Dans quelle sorte de programme une telle structure apparait ? J'ai jamais vu un truc pareil.

Pour l'imbrication des boucles, je suis d'accord ca "peut" servir. Mais devoir sortir de deux boucles en meme temps en les court circuitant, j'ai jamais eu besoin et pourtant j'en suis pas a ma première ligne de code. Le seul cas que j'imagine, c'est dans le cas des manipulations de tableau de tableaux mais dans ce cas, c'est pas un goto, mais un return qu'on trouvera plutot.

Enfin bref, le jour ou j'aurais besoin d'un goto, je viendrais poster ici :)

samedi 7 juillet 2007 à 23:01:05 | Re : A quoi correspond le : (seul pas ::)

BruNews

Administrateur CodeS-SourceS
Gaffe qu'il y en a un dans l'implem de qsort() (1er qui me vient à l'esprit).

ciao...
BruNews, MVP VC++

samedi 7 juillet 2007 à 23:10:43 | Re : A quoi correspond le : (seul pas ::)

SAKingdom

Membre Club
Les 10 if, c'était pour ce faire une idée :). Reste quand même que 3 ou 4 if ensemble, ça commence à faire beaucoup en terme d'espace (les tab), de caractère (le accolades par ex) etc.

Pour ce qui est de court-circuiter une double boucles, je n'arrive pas à trouver d'exemple réel mais je peux t'affirmer que j'ai déjà eu à en coder.

Voici un autre exemple d'utilisation de goto:
http://www.codyx.org/snippet_exclure-caracteres-chaine_376.aspx#1287

S'il y a un moyen de faire équivalent sans goto et sans code ASM supplémentaire, ben... je ne le connais pas :)

C++ (@++)


samedi 7 juillet 2007 à 23:16:28 | Re : A quoi correspond le : (seul pas ::)

SAKingdom

Membre Club
Oups, mauvais lien:
http://www.codyx.org/snippet_exclure-caracteres-chaine_376.aspx#1211

En passent, si quelqu'un peut faire un équivalent sans goto, je serais curieux de voir ce que ça donne.

C++ (@++)


samedi 7 juillet 2007 à 23:32:32 | Re : A quoi correspond le : (seul pas ::)

acx01b

salut

celle ci me parait effectivement aussi bien sans goto
et c'est dûr à dire mais j'ai pas l'impression qu'elle soit moins performante ?

void  virer (char *string, const char *tokens) {
  char *s = string;
  char *c = tokens;
  while (*s) {
     if (!*c) {
        *string++ = *s++;
        c = tokens;
     }
     else if (*c == *s)  {
        s++;
        c = tokens;
     }
     else c++;
  }
  *string = 0;
}



1 2

Cette discussion est classé dans : code, source, opérateur, correspond, pstop


Répondre à ce message

Sujets en rapport avec ce message

code source de la visionneuse microsoft en C++ [ par tompouce ] j' ai un projet à faire en C++ et je n'y connaît strictement rien AU SECOURS!!Jai fait une fenetre avec un simple menu Fichier** Ouvrir** QuitterQuand Recherche code source de notepad... [ par PierreP ] ou de tout autre éditeur de texte assez simple.Merci d'avance ! Demande de tutorial et de code source... [ par MaTHieU ] Salut,Tout d'abord, merci pour ce superbe site !Je cherche des cours pour apprendre à faire des tunnel et du plasma en Visual C++ ou des codes sources imprimer et image en c++ [ par naney ] je voudre un code source qui me montre comment imprimer et un autre qui me montre comment inserais une image en c++ (n'importe quel format d'image) ex Pb code source CMphSock [ par xaviou ] Salut.J'ai téléchargé le projet "CMphSock" : Utilisation de Winsock sans MFC.Je l'ai compilé en mode Debug : tout est OKJ'ai essayé en mode Release : Salut, je voudrai savoir si qql'un peut me faire un petit code source sur ... [ par Uncle-Shu ] En faites je voudrai creer une application dans le style de VB (Fichier, Edition,...) !!Merci d'avance et bonne chance !! C++ Standard ? [ par mmuller57 ] Voila, je viens d'aller sur le site de Bjarne Stroustrup et j'y ai pris un exemple de code source en C++ standard :#include#includeusing namespace std Code source d'un exploreur de page HTML [ par Aurelien62fr ] Bonjour je suis en train de develloper (essayer) un systeme d'exploitation en HTML. Mais j'ai besoin maintenant d'un programme pour le faire tourner, convertir 3DS fichier en code source OpenGL [ par fabienGL ] Bonjour, je vous écris car j'aimerais que quelk1 me donne un logiciel, ou script (simple :-) ) pour "traduire" un fichier .max du logiciel 3D Studio M recherche d un code source liaison serie [ par chupeau ] bonjour,je recherche le code source d'une liaison serie de type CGPIBentre un pc et un oscilloscope.C'est liaison devra relever des tensions en sortie


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 6,271 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.