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 : Fonction plus ou moins basic [ Archives / Au secours ] (nem02004)

dimanche 5 février 2006 à 15:19:01 | Fonction plus ou moins basic

nem02004

Voila je voudrais faire une fonction Test du genre:
Test(108.111.108); qui me retourneré "lol" (avec les CHR).
Donc je fait:


char Test(char* data) {
     char Decode[1024];
     int Chre;
     char *Chr = strtok(data, ".");
     Chre = atoi(Chr);
     sprintf(Decode,"%s%c",Decode,Chr);
     while (Chr) {
     Chr = strtok(NULL, ".");
     Chre = atoi(Chr);
     sprintf(Decode,"%s%c",Decode,Chre);
    }
    return Decode;
}

Mais c po bon dutout lol, si vous pourriez m'aider ca serai sympa

dimanche 5 février 2006 à 22:09:33 | Re : Fonction plus ou moins basic

dark_naruto25

Je comprends pas trop ce que tu voudrais faire, et encore moins où est ton problème ! Soit un peu plus précis stp.



lundi 6 février 2006 à 00:54:48 | Re : Fonction plus ou moins basic

Galmiza

Essaie un truc du style: char result[32]='\0'; int size=0; while(*data) { char* cpy=data; while(*data && *data!='.'); *data=0; result[size++]=(char)atoi(cpy); }

lundi 6 février 2006 à 13:08:36 | Re : Fonction plus ou moins basic

Joky

Membre Club
Réponse acceptée !
Moi j'aurais fait comme ça

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void CutChr(char *in, char *out)
{
    char *c = in;
    char *ou = out;
    char sz[16] = {0};
    char *d = sz;

    while(*c)
    {
        if(*c != '.')
            *d++ = *c;
        else
        {
            d -= strlen(sz);
            *ou++ = (char)atoi(sz);
        }
        c++;
    }
    *ou++ = (char)atoi(sz);
    *ou = 0;
}

int main()
{
    char Out[16] = {0};
    char sz[] = "108.111.108";
    CutChr(sz, Out);
    printf("%s\n", Out);
    system("pause");
    return 0;
}

if(!Meilleur("Joky")) return ERREUR;<


lundi 6 février 2006 à 13:46:58 | Re : Fonction plus ou moins basic

nem02004

c super Jocker, mais pares reflexion jvient de penser a unt ruck genre:

char * replace(char *buf,...)
{
  char *exps[200];
  char *p;
  int ep = -1;
  va_list vp;
  va_start(vp,buf);
  char *result;
  while(p = (char *)va_arg(vp, char *) )
  {
      exps[ep++] = p;
      sprintf(result,"%s%c",result,p);
  }
  return result;
}

int main(int argc, char* argv[]) {
    MessageBox(NULL,replace(0, 108,111,108, 0),NULL,0);
}

Comme ca c encore mieux, si tu peut maider a émliorer le code parcke la il marche pas pour des grands nombres de lettres :s


lundi 6 février 2006 à 14:10:37 | Re : Fonction plus ou moins basic

nem02004

Voila mon code marche, mais comme je ne suis pas un super programmeur, je pense qu'il ya moyen de l'amélioré, c'est la que vous intervenez :D


char * replace(char *buf,...)
{
  char *exps[1024];
  char *p;
  int ep = -1;
  va_list vp;
  va_start(vp,buf);
  char result[50];
  sprintf(result,"");
  while(p = (char *)va_arg(vp, char *) )
  {
      exps[ep++] = p;
      sprintf(result,"%s%c",result,p);
  }
  return result;
}

int main(int argc, char* argv[]) {
    MessageBox(NULL,replace(0, 86,111,105,108,97,32,99,101,99,105,32,101,115,116,32,117,110,101,32,103,114,97,110,100,101,32,102,114,97,115,101,44,32,101,116,32,111,110,32,99,111,110,115,116,97,116,101,32,113,117,101,32,99,97,32,109,97,114,99,104,101,32,33, 0),NULL,0);
  }


mardi 7 février 2006 à 12:26:14 | Re : Fonction plus ou moins basic

Joky

Membre Club
Ah les fonctions à arguments variables, c'est pas de mon domaine :)
Et on ne retourne jamais un pointeur sur le tas comme ça. Autant passer par un argument supplémentaires

if(!Meilleur("Joky")) return ERREUR;<




Cette discussion est classé dans : fonction, char, chr, decode, chre


Répondre à ce message

Sujets en rapport avec ce message

pb memoire sur fonction recursive [ par MrKribou ] J'ai fait une fonction pour rechercher un repertoire sur le disque qui renvois ensuie le path complet de ce repertoire. Donc cette fonction recherche char -> char* [ par gangsoleil ] Salut,Je souhaite transformer un char en char*, et impossible de trouver une fonction qui fasse ca en C !A priori, aucune fonction de string.h ne peut PROBLEME pour retourner un char* a partir d'un fichier [ par kobee12 ] Voici ma fonction. Elle prend en argument un caractere. A partir de ce caractere, elle renvoie la chaine qui lui est associe.Par exemple:"fichier_lang PROBLEME pour retourner un char* apres recuperation d'une chaine(sscanf) d'un fichier [ par kobee12 ] Voici ma fonction. Elle prend en argument un caractere. A partir de ce caractere, elle renvoie la chaine qui lui est associe.Par exemple:"fichier_lang Convertir une string en char* [ par dickymoe ] Existe-t-il une fonction qui permet de convertir une string en char* ?ou alors une fonction qui compare deux string sans respecté la casse ???Merci(en renvoie d'un tableau en char ds une fonction [ par TheBabyCool ] Comment peut on renvoyer un tableau de char du type :char i[][] dans une fonction ?Merci pb avec variable [ par jeffise57 ] Please aidez moiJe reçoit comme arugument du fonction des variables unsigned char* et je doit passer dans une deuxième fonction les même arguments mai Pour les doués, moi j'en peu plus ! [ par sena ] Salutje voudrais en fait faire un passage de paramètre a une fonction dont un a une valeur par défaut. (puis inclure ca dnas une DLL)Par exemple une f fonction strlen [ par ToToL ] Voici mon probleme :je voudrai dans un tableau a deux dimetion savoir combien il reste de place dans les colone donc j'ai pensé a la fonction strlen c Variable dans MessageBox [ par Arecibo ] Je voudrais afficher le contenu d'une variable dans une MessageBox, mais ça ne marche pas parce que cette variable est de type int et non pas char.En


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 : 0,390 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é.