begin process at 2010 02 10 15:22:04
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Algorithme

 > 

Compression, Split & Cryptage

 > 

probleme avec char et strcat :'(


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

probleme avec char et strcat :'(

mardi 22 avril 2008 à 12:43:41 | probleme avec char et strcat :'(

paulina82

bonjour a tous. j'ai un probleme avec char er stract. enfaite j'ai fais 2 fonction. la 1ere qui doit initialisé un tableu avec une chaine de caractere = "" et la 2eme fonction qui doit rajouter "1" a la moitier du tableu et "0" a la 2eme moitié. le probleme c'est que quand j'utilise un p[ ] dans la 1ere fonction lors de l'affichange chaque case a 6 valeurs "000111" alor qu'elle devrais avoir qu'une. ou "1" ou "0". don j'ai fais un test et j'ai essayé avec un p2 [] (que j'ai initialisé a "2") et dans cette case j'obtien bien ce que je veut. Dans mon programme normalement je devrais avoir 256 case. Mais comme je peu pas faire 256 p[] est ce que qq1 pourais m'aider? car je vois pas comment faire. je vous remercie d'avance pour votre reponse je join le code et le resultat : void initialisation(char *tab[],int taille){ int i; char p[2560]=""; char p2[2560]="2"; for(i=0; i< 6 ;j++){ tab[j]=strcat( tab[j],un); } for(i=0;i<6;i++){ printf("%s\n",tab[i]); } } int main (int argc, char ** argv){ codage(); return (EXIT_SUCCESS); } reultat : 00011 00011 00011 00011 00011 21
mardi 22 avril 2008 à 16:27:31 | Re : probleme avec char et strcat :'(

cephalic

Bonjour
Je comprends pas tout ce que tu veux faire essaye d'être plus clair et surtout indente ton code c'est illisible comme sa.
Mais je vois déjà une erreur:
au niveau du premier for dans ta fonction d'init tu as :
for(i=0; i< 6 ;j++)
il faut le remplacer par
for(i=0; i< 6 ;i++)
Je ne sais pas si ton erreur vient de la car je n'ai pas tout compris mais c'est deja un début.
Tiens nous au courant.
mardi 22 avril 2008 à 17:49:22 | Re : probleme avec char et strcat :'(

paulina82

rebonjour,
tout d'abord je suis desolé pour la forme de la fonction. j'ai été sur knopix et il a enlevé tout les espaces et saut a la ligne
je join encor une fois la fonction. mon but est de ecrire une 1ere fonction qui initialise un tableau de chaine de caracteres a  "" . ma  2eme fonction prend ce tableau  et  dans la 1ere moitié du tableau elle va rajouté un "0" a chaque case. puis dans la 2eme moitié elle va rajouté un "1". par ex si j'ai mon tableau vide et il a 6 case par ex j'aurais 000111. c'est a dire dans la 1ere case "0" dans la 2eme "0" .... par ex si je fais ma fonction avec ce nouveau tableau j'aurais 000000111111 dans la 1ere case j'aurais "00" dans la 2eme "00" .... ici dans chaque case du tableau (sauf la derniere j'ai 000111)
le probleme c'est qu'il faut une adresse differente pour chaque p[]. et comme je peut pas faire a la main 256 p[] (la j'ai essayé avec un p2[]) je voudrais savoir si qq1 conait une methode pour resoudre ce probleme ou peu etre une autre solution pour ma fonction. si qq1 pouvais m'aidé car je suis bloqué et je peut pas avancé
je vous remercie d'avance




void initialisation(char *tab[],int taille){

  int i;
  char p[2560]="";
  char p2[2560]="2";
  for(i=0; i<taille-1 ; i++){
    tab[i] =p;
  }
  tab[taille-1] =p2;
}
 

void codage(){
  char *tab[2560];
  int i,j;
  int k=3;  
  char *zero="0";
  char *un="1";
 
  initialisation(tab,6);
  for(i=0; i<k ; i++){  
     
    tab[i]= strcat( tab[i] ,zero);
  }   
  for(j=k; j < 6 ;j++){
      
    tab[j]=strcat( tab[j],un);
  }
  for(i=0;i<6;i++){
    printf("%s\n",tab[i]);
  }
}


int main (int argc, char ** argv){
    codage();
  return (EXIT_SUCCESS);

}


resultat :

 00011
 00011
 00011
 00011
 00011
 21
mardi 22 avril 2008 à 18:38:26 | Re : probleme avec char et strcat :'(

juju12

Je sais pas si c'est ce que tu veux

void FillArray(char* pOld,char*pNew,int len)
{
   for(int i=0;i<size;i++)
   {
      pNew[2*i]=pOld[i];
      pNew[2*i+1]=(i/size)+'0';
   }
   pNew[len]=0x0;
   return;
}

utilisation :
char pOld[]="0011";
char pNew[9];
FillArray(pOld,pNew);
résultat : pNew="00001111";
mardi 22 avril 2008 à 18:39:49 | Re : probleme avec char et strcat :'(

juju12

ah zut remplacer 'size' par 'len' dans la condition d'arrêt du for
et pour l'utilisation FillArray(pOld,pNew,4);
mardi 22 avril 2008 à 18:47:27 | Re : probleme avec char et strcat :'(

Cyr62110

char *tab[2560]; //Tu initialises un tableau de 2560 pointeur de type char
Et tu initialise cela bizarement
tab[i] = (char*)malloc((taille+1)*sizeof(char));
Voila pour une initialisation correcte des pointeurs.
taille+1 : pour eviter d'oublier de laisser de la place pour le '\0' de fin de chaine.

char *un = '1';
char *zero = '0';
Non il faut utiliser les options de precompilation si tu veux faire comme cela
#define un '1'
#define zero '0'

Voila pour ce qu j'ai vu,aprés j'ai pas le temps de testé ton programme.
Bye
dimanche 27 avril 2008 à 18:02:28 | Re : probleme avec char et strcat :'(

paulina82

Merci pour vos reponses. je vais esayer de testé


Cette discussion est classée dans : fonction, probleme, case, char, strcat


Répondre à ce message

Sujets en rapport avec ce message

Probleme de char [ par ph0ton ] J'ai un probleme avec une condition.Je m'explique :J'ai une variable : char Fonction[30];Je rempli la variable grace a la lecture d'un fichier.Ensuite strcat : fonction( char* buffer, int nb ); [ par wizard512 ] Bonsoir,Je souhaiterais savoir Si une fonction similaire a strcat() existerais,mais qui ajoute un entier ( int ) dans une Retourné un tableau dans une focntion??? [ par nerone21 ] Bonjour,alors voici mon probleme, et ma fonction:char *ConcatNom(char NomFichier[MAX_PATH]){    int taillefile=strlen(NomFichier);    char nomfichier[ probleme strcat_s en release [ par LaTatadu91 ] Bonjour,Je me retrouve confronté à un probleme avec la fonction strcat_svoila ce qu'il se passe j'ai dans mon programme plusieurs appels a cette fonct Fonction Strcat [ par ydu ] Bonjour,j'utilise dev C++, vous trouverez ci-dessous une partie de mon code et la compil bloque sur la fonction StrcatPouvez vous me dire ce qui ne va Probleme pour integrer Upload Ftp ^^' [ par inf12 ] Bonjour tous le monde j'ai un soucis avec ce code  ^^' :#include int test(netbuf *conn){                char* serveur = "ftp.tonserveur.com";        c Fonction _T(); [ par d4M13N ] Bonjour,Je suis en train de faire un petit programme en C++ Application Windows Form sous Microsoft Visual Studio 2005.Je suis bloqué sur une malheure [C++] 2 char => 1 int [ par Apaachee ] Bonjour, Je possède une opération : 1+99 que je place dans un tableau de char : coutcin>>exp; //La variable exp contient l'opération conversion double en char* [ par snakers07 ] bonjour, voici mon probleme void grilleSetText(ligne,colonne,char*Text;) est une fonction comme ont peut le voir qui pren en parametre char*or j'ai un [C++] Probleme Visualisation d'images en fonction d'objets sélectionné dans ListBox [ par stef du 62 ] Bonjour a tous.Je développe un programme sous C++ Builder permettant la reservation d'étoiles a visualisé par la suite sur le telescope.Tout d'abord,


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,733 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales