Donner la valeur 0 a une variable quand je lance mon application

khalidlyon Messages postés 28 Date d'inscription mardi 17 juin 2003 Statut Membre Dernière intervention 14 août 2007 - 15 juil. 2003 à 10:23
cs_Xentor609 Messages postés 258 Date d'inscription jeudi 20 mars 2003 Statut Membre Dernière intervention 16 août 2004 - 15 juil. 2003 à 11:15
Bonjour,
Enfaite je construit une plate forme, et j'ai ce pb. si qlq un peut m aider svp. Efaite, Je lance mon application et il doit faire : si fopen(.....) n'existe pas (c.a.d. le fichier n'existe pas) on a une variable "visible" 1 , si non visible 0, le pb. que des que je lance mon application il voit que NULL n'est pas un fichier, alors il me montre la petite fenetre d'erreurs (equivalent a visible = 1) des le debut de l'application, et ca ce n'est pas bon, alors ce que je veux faire c'est : visible = 0 quand je lance l'application, et aprés il fait son travail normal.

( N.B. J'ai pensé a cette solution : if filename NULL visible 0 ;
mais ça marche pas , car il me bloque tout le sreste de l'application)

Alors qlq un à une aidé svp.

Merci d'avance.

Khalid.

Ensemble pour la science

4 réponses

cs_Xentor609 Messages postés 258 Date d'inscription jeudi 20 mars 2003 Statut Membre Dernière intervention 16 août 2004
15 juil. 2003 à 10:42
En faisant, un if strcmp(Filename,"") visible=0
ca marche pas?
Tu pourrais pas montrer un bout du code pour que ca soit plus clair.
Bye,Xentor609
0
khalidlyon Messages postés 28 Date d'inscription mardi 17 juin 2003 Statut Membre Dernière intervention 14 août 2007
15 juil. 2003 à 10:49
Bonjour,enfaite la comparaison marche trés bien, mais le probleme que je fais plein de changement dans le code sur filenname, donc je lui dit si il trouve pas le filename il doit garder celui d'avant, alors si je lui dit si filename NULL visible 0, imagine si l'utlisateur a chasit un fichier qui n'existe pas dés le début, dans ce cas j'avais filename = NULL, avec mon code puisque il trouve pas le fichier il se met dans celui d'avant, c.a.d. NULL , et la le pb. car il va pas afficher la fenetre d'erreur, puisque c'est toujours filename = NULL.
Tu vois le pb.
Le code est un peu long, si Tu veux je peux te l envoyer par mail pour eviter d'avoir une grande page sur le forum, sou si y aune possiblité de faire attachement sur le forum.
Merci pour ton aide.
Si T'as une autre aidé stp. Merci.

ensemble pour la scienceEnsemble pour la science
0
khalidlyon Messages postés 28 Date d'inscription mardi 17 juin 2003 Statut Membre Dernière intervention 14 août 2007
15 juil. 2003 à 11:15
Bonjour,
voila mon code:

filein = fopen(filename, "r");

if (NULL == filein)
{
visible = 1;
}
else
{
visible = 0;
precision = 0;

n = strlen(filename);

size = strlen(filename)-4;

for (i=0; i<size; i++)
{
if(isdigit(filename[i])) precision=precision+1;
else precision=0;
}


for (i=n-precision-4; i<n-4; i++)
{
k = i-n+precision+4;
numero[k] = filename[i];
}


convnumero = atoi(numero);

if ((next 1) && (preccedent 0))
{
nouvnumero = convnumero + incr;
next = 0;
preccedent = 0;
} else if ((preccedent 1) && (next 0))
{
nouvnumero = convnumero - incr;
preccedent = 0;
next = 0;
}
else
{
nouvnumero = convnumero;
preccedent = 0;
next = 0;
}


sprintf(numero,"%d",nouvnumero);


for (i=0;i<=strlen(filename);i++)
{
pre[i] = NULL;
}

strncpy(pre, filename, n-precision-4);


/* ******************************************* **
** **
** Pour résoudre le probleme de la precision **
** **
********************************************** */

taille = strlen(numero);

c = 0;
sprintf(a,"%d",c);

if (precision == 3)
{
if (taille == 3)
{
for (i=n-precision-4; i<n-4; i++)
{
k = i-n+precision+4;
filename[i] = numero[k];
}
}

if (taille == 2)
{
filename[n-7] = a[0];
filename[n-6] = numero[0];
filename[n-5] = numero[1];
}

if (taille == 1)
{
filename[n-7] = a[0];
filename[n-6] = a[0];
filename[n-5] = numero[0];
}
}



fileout = fopen(filename, "r");


if (NULL == fileout)
{
visible = 1;

*filename = NULL;

m = strlen(pre);

*filename = NULL;

strncpy(filename, pre, m);


tomp = ".SOL";

sprintf(numero,"%d",convnumero);

/* ******************************************* **
** **
** Pour résoudre le probleme de la precision **
** **
********************************************** */

taille = strlen(numero);

c = 0;
sprintf(a,"%d",c);


if (precision == 3)
{

filename[m+3] = tomp[0];
filename[m+4] = tomp[1];
filename[m+5] = tomp[2];
filename[m+6] = tomp[3];

if (taille == 3)
{
for (i=0; i<4; i++)
{
filename[m+i] = numero[i];
}
}

if (taille == 2)
{
filename[m] = a[0];
filename[m+1] = numero[0];
filename[m+2] = numero[1];
}

if (taille == 1)
{
filename[m] = a[0];
filename[m+1] = a[0];
filename[m+2] = numero[0];
}

}
}

else
{
convnumero = nouvnumero;
}

}

return(1);
}
0
cs_Xentor609 Messages postés 258 Date d'inscription jeudi 20 mars 2003 Statut Membre Dernière intervention 16 août 2004
15 juil. 2003 à 11:15
Bon, ca serait bien si tu me l'envoie sur ma boite comme ca je peux regarder ca trankilement.
Bye,Xentor609
0
Rejoignez-nous