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 : erreur bizzare [ Divers / Général ] (lektrosonic)

lundi 3 décembre 2007 à 01:11:20 | erreur bizzare

lektrosonic

Bonjour, je code un programe en C sous Visual Studio.
La chose qui est tres surprenante c est que quand je lance mon programe a partir de windows, il plante tand dis que si je le lance a partir de Visual (en cliquant sur 'Debug'), mon programme ne plante pas,
Aucune erreur de compilation.
Quand je lance sur windows, sa m affiche l erreur: Envoyer, Ne pas envoyer.
J'ai cherche, et j'ai trouve l endroit de l'erreur (je l'ai trouve en mettan en commentaire bloc par bloc de code et je regardait si sa plantait ou pas)

Je vous met les parties du code qui sont utlisee:

Les variables globales:

char in_buffer[128];
llist l_user;

avec

typedef struct user user;
struct user
{

    int index;
    int t_index;
    BOOL connected;
    LPCTSTR ip;
    BOOL p_protected;
    LPCTSTR u_name;
    struct user *next;

};

 typedef user* llist;

et les deux fontions mises en jeu:

void split_on_ur_users(char* cache,int clas,int len)
{
      int i,j,k;
      int totals,new_len;
      char* rest;
      char** temp;
      char* copy1;
      char* copy2;
      totals=0;
      temp=NULL;
      for(i=0;i<len;i++)
      {
            if(cache[i]==SEP)
            {
                cache[i]=0;
                rest=&cache[i+1];
                break;
            }
      }
      totals=atoi(cache);
      if(totals!=0)
      {
            temp=(char**)malloc(totals);
            if(!temp)
            {
                ..
            }
            new_len=len-strlen(cache);
            j=0;
            k=0;
            temp[0]=rest;
            for(i=0;i<new_len;i++)
            {
                if(rest[i]==SEP)
                {
                        if(j==1)
                        {
                            k++;
                            rest[i]=0;
                            temp[k]=&rest[i+1];
                            j=0;
                        }
                        else
                        {
                            j++;
                        }
                }
            }for(i=0;i<totals;i++)
            {
                copy1=NULL;
                copy2=NULL;
                copy1=temp[i];
                k=0;
                for(j=0;j<new_len;j++)
                {
                    if(temp[i][j]==SEP)
                    {
                        copy2=&temp[i][j+1];
                        temp[i][j]=0;
                        break;
                    }
                }
                if(l_user==NULL)
                {
                            l_user=add_user(NULL,atoi(copy1),0,copy2,"",FALSE,TRUE);
                }
                else
                {
                            l_user=add_user(l_user,atoi(copy1),0,copy2,"",FALSE,TRUE);
                }
               
            }
      }
     
}

et

llist add_user(llist linked_user,int indx,int t_indx,char* ipad,char* nam,BOOL prtcd,BOOL cnntd)
{
    user* new_user=malloc(sizeof(user));
    if(!new_user)
    {
       ...
    }
    (*new_user).index=indx;
    (*new_user).t_index=t_indx;
    (*new_user).connected=cnntd;
    (*new_user).ip=ipad;
    (*new_user).p_protected=prtcd;
    (*new_user).u_name=nam;
    (*new_user).next=linked_user;
    return new_user;
}

Mon programme alors plante quand j appele:

split_off_r_users(&in_buffer[1],0,strlen(in_buffer));

Merci d'avance



l3KTr0 Was HeRe

lundi 3 décembre 2007 à 08:42:46 | Re : erreur bizzare

BruNews

Administrateur CodeS-SourceS
LPCTSTR u_name;
pourquoi un pointeur au lieu d'un buffer ?

ciao...
BruNews, MVP VC++



Cette discussion est classé dans : int, user, temp, char, if


Répondre à ce message

Sujets en rapport avec ce message

problème de pointeur sur char (SUPER HYPER IMPORTANT -> juste pour moi...je supose) [ par levraipig ] bonjour à tous, voila moi j'ai un p'ti problème plutot embêtant.... je dois créer un class qui gère les chaines de caractères (ne me demander pas pou problème de pointeur sur char (SUPER HYPER IMPORTANT -> juste pour moi...je supose) [ par levraipig ] bonjour à tous, voila moi j'ai un p'ti problème plutot embêtant.... je dois créer un class qui gère les chaines de caractères (ne me demander pas pou taille chaine de char [ par langedechu ] Salut , voila mon prob (je sais plus comment faire) :j'ai une variable : const char *buffer; et j aimerais savoir le nombre de caractere stocker dans vecteur avec int et char [ par Tyroflan ] int **boursemain(){...cin >> nombre;for (unsigned int i=0;i bourse[i] = new int [5];donc je crée autant de vecteurs bourse que l'indique la variable vecteur avec int et char [ par Tyroflan ] int **boursemain(){...cin >> nombre;for (unsigned int i=0;i bourse[i] = new int [5];donc je crée autant de vecteurs bourse que l'indique la variable conversion [ par coyotedef ] salut!!lors de la compilation de mon code une erreur apparait. impossible de trouver un remede. "cannot convert parameter 1 from 'char [10]' to 'char' main [ par payen ] salut,en fouillant un peu sur le site, j'ai vu qu'on pouvait declarer le main comme ca:int main(int argc, char * argv[], char * env[])a quoi correspo char et int [ par ToToL ] Bonjour,Je voudrai faire une saisi a l'utilisateur et il faut k'il insert que des chiffres car apres je doit faire une operation avec ce chiffre et do Logiciels & librairies Microsoft: définitivement buggés ? [ par BenjZ ] Salut à tous, Je développe depuis 2 jours un petit logiciel de stéganographie tout bête: il code un fichier dans une bitmap sur les bits de poids faib concatenation [ par asmv ] //a partir d'elements de tableau 'int' transformes en 'char'//essai de concatenation qui ne fonctionne pas pourquoi ?//merci pour votre aide#include #


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Appels d'offres

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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,172 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é.