Demande d'un ptit truc simple (visual c++, win32 sans mfc)

Résolu
sran_isback Messages postés 41 Date d'inscription mardi 2 novembre 2004 Statut Membre Dernière intervention 30 janvier 2013 - 17 nov. 2005 à 09:46
sran_isback Messages postés 41 Date d'inscription mardi 2 novembre 2004 Statut Membre Dernière intervention 30 janvier 2013 - 21 nov. 2005 à 11:14
Comment je fait pour "coller" deux variables pour obtenir un truc du style



a = "fichier"



b = "5"



a + b = "fichier 5"



quelle est la fonction pour ça?



merci

tien la tien la bien

16 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
18 nov. 2005 à 15:32
incrémente les valeurs:
#define IDC_DON0 1001
#define IDC_DON1 1002
etc...

Commence par assimiler Petzold, on reprendra ensuite:
http://brunews.free.fr/brunews/download/CP5.zip
http://brunews.free.fr/brunews/download/CP5Sources.zip

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
3
Galmiza Messages postés 573 Date d'inscription samedi 16 novembre 2002 Statut Membre Dernière intervention 9 avril 2008 1
17 nov. 2005 à 09:54
char a[] = "féchier"

char b[] = "5"

char total[32] = '\0';



strcat(total, a);

strcat(total, b);



et total = "fichier5";
0
ricky78 Messages postés 126 Date d'inscription jeudi 5 juin 2003 Statut Membre Dernière intervention 11 juillet 2006
17 nov. 2005 à 09:55
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
17 nov. 2005 à 10:44
strcat (a,b); PLANTAGE PAR ECRASEMENT !!!

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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sran_isback Messages postés 41 Date d'inscription mardi 2 novembre 2004 Statut Membre Dernière intervention 30 janvier 2013
17 nov. 2005 à 10:59
case IDC_DECOUP:

{


for (int
d=0;d==5;d+=1)

{



char e[]="IDC_DON";



char res[]="/0";



strcat(res,e);



SetDlgItemText(hDlg,res,"ok");



return 0;

}

break;

}

voila mon code.... mais impossible de l'afficher... comment je peux convertir char en int?

tien la tien la bien
0
Galmiza Messages postés 573 Date d'inscription samedi 16 novembre 2002 Statut Membre Dernière intervention 9 avril 2008 1
17 nov. 2005 à 11:03
ATTENTION !!!!

(je t'ai pas effrayé j'espère)



char res[]="/0";

strcat(res,e);



Bug à coup sûr !

res alloue 2 octets seulement.

Fais char res[32] = '\0'; pour avoir 32 octets initialisés à 0



char en int: atoi() [ASCII to Int]
0
sran_isback Messages postés 41 Date d'inscription mardi 2 novembre 2004 Statut Membre Dernière intervention 30 janvier 2013
17 nov. 2005 à 12:18
case IDC_DEC:

{

int d=0;


while (d<=5)

{



char d2[32]="/0";



char e[]="IDC_DON";



char res[32]="/0";



int res2;



_itoa(d,d2,5);



strcat(res,e);



strcat(res,d2);



res2 = atoi(res);



SetDlgItemText(hDlg,res2,"ok");



d= d+1;

}

break;

}

voila le code modifié.... pourquoi res2 reste à 0 au lieu de me mettre IDC_DON0... IDC_DON1 etc... ?

tien la tien la bien
0
sran_isback Messages postés 41 Date d'inscription mardi 2 novembre 2004 Statut Membre Dernière intervention 30 janvier 2013
17 nov. 2005 à 12:19
quote

ATTENTION !!!!

(je t'ai pas effrayé j'espère)

/quote


nan t'inkiète... j'ai l'habitude... c'est pas simple ce style de prog.
tien la tien la bien
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
17 nov. 2005 à 12:26
C'est quoi ce souk, tout est réinitialisé à chaque tour de boucle.
Faudrait peut-être faire une pause et te replonger dans un bouquin de C.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
sran_isback Messages postés 41 Date d'inscription mardi 2 novembre 2004 Statut Membre Dernière intervention 30 janvier 2013
18 nov. 2005 à 12:06



C'est quoi ce souk, tout est réinitialisé à chaque tour de boucle.

Faudrait peut-être faire une pause et te replonger dans un bouquin de C.



ciao...




vi autant pour moi .... c'est ce que je vais faire... désolé.

tien la tien la bien
0
sran_isback Messages postés 41 Date d'inscription mardi 2 novembre 2004 Statut Membre Dernière intervention 30 janvier 2013
18 nov. 2005 à 12:15
Réecris ça donne ça...

mais quand j'execute il met run time error 2# : stack around the variable res vas corrupted.....

quelqu'un peut m'aider?



case IDC_DEC:

{

int d=0;


char
d2[32]="/0";


char
e[]="IDC_DON";


char
res[32]="/0";

int res2;


while (d<=5)

{



_itoa(d,d2,5);



strcat(res,e);



strcat(res,d2);



res2 = atoi(res);



SetDlgItemText(hDlg,res2,"ok");



d= d+1;

}

break;

}




tien la tien la bien
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
18 nov. 2005 à 12:48
Cesse donc de nous mettre ces lignes qui n'ont aucun sens:
strcat, strcat... par force ça éclate.
Quel est le but, voilà ce qu'il conviendrait de savoir.

Je vais supposer qu'il faut écrire "OK" dans 6 controles indexés par ordre croissant partant de IDC_DON:
case IDC_DEC:
{
int d = 0;
while(d <= 5) {
SetDlgItemText(hDlg, d + IDC_DON, "OK");
d++;
}
break;
}

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
sran_isback Messages postés 41 Date d'inscription mardi 2 novembre 2004 Statut Membre Dernière intervention 30 janvier 2013
18 nov. 2005 à 13:26
au début c'est ce que j'ai fait au debut...
vi mais IDC_DON ----> identificateur non déclaré.... et c'est la le problème
tien la tien la bien
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
18 nov. 2005 à 13:38
#include "resource.h" peut-être

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
sran_isback Messages postés 41 Date d'inscription mardi 2 novembre 2004 Statut Membre Dernière intervention 30 janvier 2013
18 nov. 2005 à 15:07
vi mais en fait je suis un boulet de première.....



je ne sais pas indexer les controles comme en VB (dans le genre
IDC_DON(0), IDC_DON(1)....IDC_DON(x)) comment fait -on? désoler
d'abuser de votre compétence mais j'apprend et la vraiment je sèche.
tien la tien la bien
0
sran_isback Messages postés 41 Date d'inscription mardi 2 novembre 2004 Statut Membre Dernière intervention 30 janvier 2013
21 nov. 2005 à 11:14
merci



en fait c 'est le bouquin que j'ai commendé sur amazon...



l'es très rare et je le cherchais depuis un bout de temps... de plus
j'ai resorti mon autre bouquin de programation c++ de base.



en tout cas merci de votre compréhension.

tien la tien la bien
0
Rejoignez-nous