Probleme de syntaxe dans boucle while (problemes de pointeurs) [Résolu]

cs_pif56 9 Messages postés mercredi 26 novembre 2003Date d'inscription 13 avril 2006 Dernière intervention - 20 févr. 2006 à 20:56 - Dernière réponse : BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention
- 20 févr. 2006 à 21:44
Bonjour,

J aimerais savoir ce qui cloche dans la syntaxe ci-dessous. Je recois 5 erreurs provenant de la ligne commencant par while.
J ai essaye de joindre une capture d écran pour vous montrer les erreurs, mais je n ai pas trouver le moyen de joindre l image.
Si vous en avez besoin dites moi seulement comment insérer ma capture d'ecran.
Merci de votre aide.

Char *buffer,prefixString;
Int i=0;

buffer = (PCHAR)LocalAlloc(LMEM_FIXED, FileSize+1);
prefixString = (PCHAR)LocalAlloc(LMEM_FIXED, 20);
while( ( buffer[i] == '\' ) && ( buffer[i+1] == '1' ) )
{
prefixString[i]=buffer[i+2];
i++;
}
prefixString[i]='\0';

SetDlgItemText(hwnd,IDC_EDIT_PREFIX,prefixString);
SetDlgItemText(hwnd,IDC_EDIT_DEPTHLIST,buffer);
LocalFree(buffer);
LocalFree(prefixString);
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention - 20 févr. 2006 à 21:44
3
Merci
SetWindowText(hedit, prefixString);

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++

Merci BruNews 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 84 internautes ce mois-ci

Commenter la réponse de BruNews
cs_pif56 9 Messages postés mercredi 26 novembre 2003Date d'inscription 13 avril 2006 Dernière intervention - 20 févr. 2006 à 20:57
0
Merci
[auteurdetail.aspx?ID=198568 ]

PS: desole c est le meme message avecune faute en moins (prefixString est également un pointeur vers char)

Bonjour,
J aimerais savoir ce qui cloche dans la syntaxe ci-dessous. Je recois 5 erreurs provenant de la ligne commencant par while.
J ai essaye de joindre une capture d écran pour vous montrer les erreurs, mais je n ai pas trouver le moyen de joindre l image.
Si vous en avez besoin dites moi seulement comment insérer ma capture d'ecran.
Merci de votre aide.

Char *buffer,*prefixString;
Int i=0;

buffer = (PCHAR)LocalAlloc(LMEM_FIXED, FileSize+1);
prefixString = (PCHAR)LocalAlloc(LMEM_FIXED, 20);
while( ( buffer[i] == '\' ) && ( buffer[i+1] == '1' ) )
{
prefixString[i]=buffer[i+2];
i++;
}
prefixString[i]='\0';

SetDlgItemText(hwnd,IDC_EDIT_PREFIX,prefixString);
SetDlgItemText(hwnd,IDC_EDIT_DEPTHLIST,buffer);
LocalFree(buffer);
LocalFree(prefixString);
Commenter la réponse de cs_pif56
BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention - 20 févr. 2006 à 21:22
0
Merci
"Char" avec une majuscule ???

'\\' doit être doublé, c'est un caractère d'échappement.

LocalAlloc est issu du 16 bits, à remplacer par VirtualAlloc ou HeapAlloc.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Commenter la réponse de BruNews
BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention - 20 févr. 2006 à 21:31
0
Merci
Autre chose, dans une situation telle que celle ci, inotile de faire tourner le memory manager inutilement:

#define MEMDISPO (MEM_RESERVE | MEM_COMMIT | MEM_TOP_DOWN)

prefix = VirtualAlloc(0, FileSize+1 + 20, MEMDISPO, PAGE_READWRITE);
buffer = prefix + 20; // TOUT EN 1 SEULE ALLOC

Al a fin, juste un VirtualFree sur prefix, double benef.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Commenter la réponse de BruNews
cs_pif56 9 Messages postés mercredi 26 novembre 2003Date d'inscription 13 avril 2006 Dernière intervention - 20 févr. 2006 à 21:41
0
Merci
Merci beaucoup de ton aide.
Je me galere un peu avec win32...ah quand on veut faire ses propres interfaces!

En meme temps, j ai un autre probleme de taille. Sur un programme C/C++ sans MFC, j utilise d'habitude printf pour cibler mes erreurs.
Est ec que tu aurais un equivalent sur win32?

Dans cet exemple, je n'arrive pas a afficher dans une edit box ma chaine prefixString, qui est censee etre egale a buffer tant que buffer ne lit pas la chaine "\1". J'aimerais donc affcher (via l'equivalent d un printf ) quelquechose me premettant de cibler mon erreur.

Merci encore de ta patience!
Commenter la réponse de cs_pif56

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.