begin process at 2010 02 09 23:12:17
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Système

 > 

Autre

 > 

Probleme de concatenuation


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

Probleme de concatenuation

vendredi 9 mai 2008 à 17:31:13 | Probleme de concatenuation

romainbisson

Bonjour,

j'ai ce probleme avec dev c++

invalid conversion from `char' to `const char*'   -- ligne 24  

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

    int main(int argc, char *argv[]){
       
    char* nf = argv[1];
    FILE *f;
    FILE *out;
    char buffer[100000];
    char c=0, i=0;
    char str[10];
  
    f=fopen(nf,"r");
    out = fopen("out.txt","w");
    if (f != NULL){
        // Boucle de lecture des caractères un à un
        do
        {  
            i++;
            c = fgetc(f); // On lit le caractère
           
            if((i > 62) && (i < 69)){
            fprintf(out,"%c", c); // On l'affiche
            strcat(str,c);
            }
            if(i > 157){
                 i=0;
                 fprintf(out,"\n");
                 }
            }
        while( c != EOF);
        fclose(f);
        fclose(out);
        return 0;
        }
}

je souhaite faire une concatenuation mais sa ne marche pas, et ensuite j'aimerais comparer cette chaine avec une chaine contenant un espace si c'est le cas je n'ecrire pas dans le fichier, En gros, je ne veux pas que le caractere que trouve le fgets soit un espace entre 62 et 69. c'est comprehensible ?

car le fichier ressemble a ça sinon:

035211
034666


054865
208400
088855

et je souhaite qui ressemble a sa


035211
034666
054865
208400
088855

vendredi 9 mai 2008 à 17:43:23 | Re : Probleme de concatenuation

DeAtHCrAsH

Une solution :
strcat(str, (char *)c);


Shell
vendredi 9 mai 2008 à 17:43:41 | Re : Probleme de concatenuation

Cyr62110

Pour concatener un caractére à une chaine :
int ibuf = strlen(str);
str[ibuf] = c;
str[ibuf+1] = '\0';
Voila pour ton probleme de concatenation.
Bye
vendredi 9 mai 2008 à 20:25:16 | Re : Probleme de concatenuation

SAKingdom

Membre Club
deathcrash >> Ben non. strcat demande une adresse. Cependant, là tu passes la valeur d'un caractère.

Normalement, pour écrire 1 caractères à la fois dans un buffer, on maintien un pointeur sur la fin de ce buffer.

Mais là, c'est la lecture caractère par caractère d'un fichier. C'est nulle coté performance
Utiliser fread à la place et lire par bloc. Ensuite, on effectue les traitements sur le buffer.

C++ (@++)



Cette discussion est classée dans : probleme, out, char, if, concatenuation


Répondre à ce message

Sujets en rapport avec ce message

Probleme GTK [ par Jo ] Salut,Quelqu'un pourrait me dire ou est l'erreur ?char * fichier; char *z;gchar *temp;temp = gtk_entry_get_text(GTK_ENTRY(Data));fd1= fopen((char *)te PROBLEME POINTEURS [ par zeloveur ] char * saisirChaine(){ int i=0; char *chn; chn=(char *)malloc(sizeof(char)); do { chn[i]=getchar(); chn=(char *)realloc(chn,(++i+1)*sizeof(char)); } manipulation de caractères [ par vanpet ] Bonjour à tous !Voici mon probleme (de debutant, mais faut bien commencer un jour)...j'ai 3 variables *char syllabe1 (2 et 3)qui contiennent chacune u Probleme complique sur pointeur mais reponse simple surement [ par MrKribou ] Un probleme de pointeur je pense.Je vous expose la situation :Dans une Classe (ClassEx) voila je fais un truc du genre :char* pChar = this->getInfo("i Pointeur et objet ET collection d'objet [ par MrKribou ] En fait je savais pas trop quoi mettre comme titre pour pas copier :pBon je vous explique mon probleme (j'ai pas le source de ce probleme sous la main Probleme de conversion [ par allo8086 ] Salut tous le mondeEnfet, je veux convertir une chaine de caratere lue a partir d'un fichier texte en unsigned char.A propos j'ai essayé de passer pa Probleme Socket C [ par VoLc0m ] voila mon pb :en C bien sur :) je dois, par socket, envoyer ca a une address (server counter strike) :The packet should start with 4 consecutive bytes probléme d'écriture fichier [ par phoenixadb ] phoenixadbJ'ai un problème sur une fonction que je n'arrive pas à résoudremon nom de fichier est test.txtet ma fonction:void ecriturefichier(char* nom probleme de *Char [] [ par oRTEEZ ] Bonjour, voila mon nouveau petit probleme.je pense pas que cela soit tres dur.J'ai un char Text[256] : contenant un texte entre par l'user.et unchar Probleme Comparaison deux chaines de caracteres [ par Coxis ] Salut,Bon c pas compliqué j'ai 2 tableaux de caracteres de tailles differentes, je veux les comparer mais ca marche pas...En fait a la base je voulais


Nos sponsors


Sondage...

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,296 sec (4)

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